Algorithm & Data Structure/BOJ

[백준] 2563. 색종이

2020. 10. 6. 10:36

www.acmicpc.net/problem/2563

 

2563번: 색종이

첫째 줄에 색종이의 수가 주어진다. 이어 둘째 줄부터 한 줄에 하나씩 색종이를 붙인 위치가 주어진다. 색종이를 붙인 위치는 두 개의 자연수로 주어지는데 첫 번째 자연수는 색종이의 왼쪽 변��

www.acmicpc.net

100*100 격자 맵에 색종이가 있는 부분을 1로 칠해주고 칠해진 부분을 카운트 해주면 되는 문제였습니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 2947. 나무 조각  (0) 2020.10.04
[백준] 2161. 카드1  (0) 2020.10.04
[백준] 3085. 사탕 게임  (0) 2020.09.23
[백준] 2638. 치즈  (0) 2020.09.22
[백준] 2636. 치즈  (0) 2020.09.18

[백준] 2947. 나무 조각

2020. 10. 4. 15:52

www.acmicpc.net/problem/2947

 

2947번: 나무 조각

첫째 줄에 조각에 쓰여 있는 수가 순서대로 주어진다. 숫자는 1보다 크거나 같고, 5보다 작거나 같으며, 중복되지 않는다. 처음 순서는 1, 2, 3, 4, 5가 아니다.

www.acmicpc.net

swap을 사용하는 간단한 시뮬레이션 문제였습니다.

주어진 순서에따라 스왑을 구현하면 됩니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 2563. 색종이  (0) 2020.10.06
[백준] 2161. 카드1  (0) 2020.10.04
[백준] 3085. 사탕 게임  (0) 2020.09.23
[백준] 2638. 치즈  (0) 2020.09.22
[백준] 2636. 치즈  (0) 2020.09.18

[백준] 2161. 카드1

2020. 10. 4. 15:10

www.acmicpc.net/problem/2161

 

2161번: 카드1

N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가

www.acmicpc.net

Deque를 활용하는 간단한 시뮬레이션 문제입니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 2563. 색종이  (0) 2020.10.06
[백준] 2947. 나무 조각  (0) 2020.10.04
[백준] 3085. 사탕 게임  (0) 2020.09.23
[백준] 2638. 치즈  (0) 2020.09.22
[백준] 2636. 치즈  (0) 2020.09.18

[백준] 3085. 사탕 게임

2020. 9. 23. 15:03

www.acmicpc.net/problem/3085

 

3085번: 사탕 게임

첫째 줄에 상근이가 먹을 수 있는 사탕의 최대 개수를 출력한다.

www.acmicpc.net

swap을 사용하는 브루트 포스 문제

각 좌표마다 행 또는 열로 한번씩 바꾸고 다시 원위치로 되돌려 놓아야 합니다.

자리를 바꾼뒤 계속 진행하는것이 아니라 자리 바꿀때마다 최대값 갱신해주는 방식으로 해결합니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 2947. 나무 조각  (0) 2020.10.04
[백준] 2161. 카드1  (0) 2020.10.04
[백준] 2638. 치즈  (0) 2020.09.22
[백준] 2636. 치즈  (0) 2020.09.18
[백준] 2460. 지능형 기차 2  (0) 2020.09.15

[백준] 2638. 치즈

2020. 9. 22. 14:29

www.acmicpc.net/problem/2638

 

2638번: 치즈

첫째 줄에는 모눈종이의 크기를 나타내는 두 개의 정수 N, M (5≤N, M≤100)이 주어진다. 그 다음 N개의 줄에는 모눈종이 위의 격자에 치즈가 있는 부분은 1로 표시되고, 치즈가 없는 부분은 0으로 표

www.acmicpc.net

시뮬레이션 문제입니다.

 

1. 구역 나누면서 공기가 2면 닿는 치즈 가장자리 체크

2. 가장자리 치즈 녹이기

3. 시간증가

=> 반복

 

가장자리에 공기 2면닿는 치즈 가장자리는 visited 배열로 확인하면 됩니다.

시간이 경과하면 맵에 공기로 체크한부분(map[i][j]==2)인 부분을 초기공기의 상태인 0으로 채워줍니다.

bfs 사용방법을 알면 쉽게 해결할 수 있습니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 2161. 카드1  (0) 2020.10.04
[백준] 3085. 사탕 게임  (0) 2020.09.23
[백준] 2636. 치즈  (0) 2020.09.18
[백준] 2460. 지능형 기차 2  (0) 2020.09.15
[백준] 10162. 전자레인지  (0) 2020.09.11

[백준] 2636. 치즈

2020. 9. 18. 11:51

www.acmicpc.net/problem/2636

 

2636번: 치즈

아래 <그림 1>과 같이 정사각형 칸들로 이루어진 사각형 모양의 판이 있고, 그 위에 얇은 치즈(회색으로 표시된 부분)가 놓여 있다. 판의 가장자리(<그림 1>에서 네모 칸에 X친 부분)에는 치즈가 놓

www.acmicpc.net

시뮬레이션 문제였습니다.

 

아래 순서대로 구현합니다.

1. 구역 나누기

- 바깥 공기 영역:2

- 치즈:1

- 치즈 속 구멍(공기x): 0

2. 치즈 가장자리 체크(1시간뒤 녹을 치즈 부분)

3. 치즈 가장자리 녹이기

4. 시간 증가 후 1번 부터 반복

 

* 구역을 나누면서 치즈 가장자리를 같이 체크해줍니다.(전역변수로 Queue를 사용)

* 반복문 탈출 조건은 치즈 가장자리의 좌표를 담는 Queue가 비었을때 탈출하면 됩니다.

* 치즈가 모두 녹기 한시간전의 치즈 조각의 개수는 탈출조건 바로 아래에 위치해야 한시간 전의 치즈조각 개수를 기억할 수 있습니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 3085. 사탕 게임  (0) 2020.09.23
[백준] 2638. 치즈  (0) 2020.09.22
[백준] 2460. 지능형 기차 2  (0) 2020.09.15
[백준] 10162. 전자레인지  (0) 2020.09.11
[백준] 2667. 단지번호붙이기  (0) 2020.09.10

https://www.acmicpc.net/problem/2460

 

2460번: 지능형 기차 2

최근에 개발된 지능형 기차가 1번역(출발역)부터 10번역(종착역)까지 10개의 정차역이 있는 노선에서 운행되고 있다. 이 기차에는 타거나 내리는 사람 수를 자동으로 인식할 수 있는 장치가 있다.

www.acmicpc.net

간단한 시뮬레이션 문제였습니다.

탄사람과 내린사람의 차이를 더해주면서 최대값을 업데이트 해주면 됩니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 2638. 치즈  (0) 2020.09.22
[백준] 2636. 치즈  (0) 2020.09.18
[백준] 10162. 전자레인지  (0) 2020.09.11
[백준] 2667. 단지번호붙이기  (0) 2020.09.10
[백준 복습] 2179. 미로 탐색  (0) 2020.09.06

[백준] 10162. 전자레인지

2020. 9. 11. 00:20

https://www.acmicpc.net/problem/10162

 

10162번: 전자레인지

3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은 ��

www.acmicpc.net

당연하게 생각하면 쉬운문제, 그리디 문제로서 한가지 정답이 없고, 다양하게 푸시면 됩니다.

저는 T가 주어지면 A버튼부터 나누어 몫과 나머지를 구합니다. 이전 나머지가 다음 T로 넘어가고 이를 다시 B가 받고, 다시 과정을 거쳐 C가 받고 끝나는 방식입니다.

만약 T가 0이 아니라면 시간을 못 맞추는 상황이므로 -1 출력해줍니다.

코드를 보시는게 더욱 이해가 되실 수 있습니다.

 

'Algorithm & Data Structure > BOJ' 카테고리의 다른 글

[백준] 2636. 치즈  (0) 2020.09.18
[백준] 2460. 지능형 기차 2  (0) 2020.09.15
[백준] 2667. 단지번호붙이기  (0) 2020.09.10
[백준 복습] 2179. 미로 탐색  (0) 2020.09.06
[백준] 1260. DFS와 BFS(복습)  (0) 2020.09.05

+ Recent posts