C 프로그래밍/BOJ
-
[백준 19237] 어른 상어C 프로그래밍/BOJ 2022. 10. 10. 15:24
https://www.acmicpc.net/problem/19237 19237번: 어른 상어 첫 줄에는 N, M, k가 주어진다. (2 ≤ N ≤ 20, 2 ≤ M ≤ N2, 1 ≤ k ≤ 1,000) 그 다음 줄부터 N개의 줄에 걸쳐 격자의 모습이 주어진다. 0은 빈칸이고, 0이 아닌 수 x는 x번 상어가 들어있는 칸을 의미 www.acmicpc.net #include #include int N, M, K; int Shark[20 + 2][20 + 2]; int lookup[400 + 2][4 + 2][4 + 2]; struct _st { int x, y; int dir; bool alive; }Info[400 + 2]; struct _ct { int idx; int time; }Smell[20 + 2..
-
[백준 1726] 로봇C 프로그래밍/BOJ 2022. 10. 10. 15:12
https://www.acmicpc.net/problem/1726 1726번: 로봇 많은 공장에서 로봇이 이용되고 있다. 우리 월드 공장의 로봇은 바라보는 방향으로 궤도를 따라 움직이며, 움직이는 방향은 동, 서, 남, 북 가운데 하나이다. 로봇의 이동을 제어하는 명령어는 www.acmicpc.net 이전에 짰던 코드는 다음과 같다. 더보기 #include #include #include int M, N;// 행, 열 int board[100 + 2][100 + 2]; int visited[100 + 2][100 + 2][4 + 2];// (x, y)에서 dir 4방향 int rx, ry, rd;// 현재 로봇 위치 방향 int ex, ey, ed;// 목적 위치, 방향 struct _st { int x..
-
[백준 17143] 낚시왕C 프로그래밍/BOJ 2022. 10. 6. 16:26
https://www.acmicpc.net/problem/17143 17143번: 낚시왕 낚시왕이 상어 낚시를 하는 곳은 크기가 R×C인 격자판으로 나타낼 수 있다. 격자판의 각 칸은 (r, c)로 나타낼 수 있다. r은 행, c는 열이고, (R, C)는 아래 그림에서 가장 오른쪽 아래에 있는 칸이다. www.acmicpc.net #include int R, C, M; int Shark[100 + 2][100 + 2]; struct _st { int x, y;// 상어위치 int s;// 속력 int d;// 방향 int z;// 크기 bool alive;// 생존여부 }; _st Info[10000 + 2]; void input() { scanf("%d %d %d", &R, &C, &M);// 행, 열..
-
[백준 19238] 스타트 택시C 프로그래밍/BOJ 2022. 10. 6. 01:34
++ 22.11.11 이 방법을 가장 추천함 사이트만 다르고 같은 문제... https://www.codetree.ai/frequent-problems/autonomous-electric-car/description 코드트리 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai https://www.acmicpc.net/problem/19238 19238번: 스타트 택시 첫 줄에 N, M, 그리고 초기 연료의 양이 주어진다. (2 ≤ N ≤ 20, 1 ≤ M ≤ N2, 1 ≤ 초기 연료 ≤ 500,000) 연료는 무한히 많이 담을 수 있기 때문에, 초기 연료의 양을 넘어서 충전될 수도 있다. 다 www.a..
-
[백준 17822] 원판 돌리기C 프로그래밍/BOJ 2022. 10. 5. 20:16
https://www.acmicpc.net/problem/17822 17822번: 원판 돌리기 반지름이 1, 2, ..., N인 원판이 크기가 작아지는 순으로 바닥에 놓여있고, 원판의 중심은 모두 같다. 원판의 반지름이 i이면, 그 원판을 i번째 원판이라고 한다. 각각의 원판에는 M개의 정수가 적혀 www.acmicpc.net // 2시간 30분 // 1128kb0ms #include int N, M, T; int pann[50 + 3][50 + 3];// 원판 최대 50개, 최대 수 50개까지 bool trans[50 + 3][50 + 3];// 인접한 수 바꿀지 말지 결정 void input() { scanf("%d %d %d", &N, &M, &T); for (int i = 1; i
-
[백준 16236] 아기 상어C 프로그래밍/BOJ 2022. 10. 4. 20:18
++ 22.10.24 다시 풀어봄 (52m) 아기 상어 처음 위치에서 자기보다 사이즈가 작은 물고기를 먹으러갈 때 까지 cost는 똑같기 때문에 사실 우선순위 큐를 쓸 필요는 없다. FIFO 큐로도 구현 가넝.. https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net #include #include int N; int board[20 + 2][20 + 2]; int visited[20 + 2][20 + 2]; struct _qt { int x,..
-
[백준 16235] 나무 재테크C 프로그래밍/BOJ 2022. 10. 3. 20:05
https://www.acmicpc.net/problem/16235 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net #include #include #include int N, M, K; int F[10 + 2][10 + 2];// 각 칸에 남아있는 양분 int A[10 + 2][10 + 2];// 겨울에 추가할 양분 struct _dt { int x; int y; int age; }; std::vector Field[10 + 2][10 + 2]; std::vector Alive[10 + 2][..
-
[백준 14891] 톱니바퀴C 프로그래밍/BOJ 2022. 10. 3. 14:58
https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 www.acmicpc.net #include #include char in_data[4 + 2][8 + 2]; int topni[4 + 2][8 + 2];// 숫자로 변경해서 운영// N극이면 0, S극이면 1 int K; int score[2][4] = { {0, 0, 0, 0},// 12시 방향이 N극일때 {1, 2, 4, 8}// S극일때 점수판 }; struct _st { int n;// 몇번째 톱니바퀴가 int..