C 프로그래밍/BOJ
-
[백준 20055] 컨베이어 벨트 위의 로봇C 프로그래밍/BOJ 2022. 9. 29. 01:38
https://www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net #include int N, K; struct _st { int w;// 내구도 int robot;// 로봇있으면 1 없으면 0 }Belt[200 + 2]; void input() { scanf("%d %d", &N, &K); for (int i = 0; i < 2 * N; i++) { scanf("%d", &Belt[i].w); } } void debug() { for (i..
-
[백준 18808] 스티커 붙이기C 프로그래밍/BOJ 2022. 9. 28. 23:18
https://www.acmicpc.net/problem/18808 18808번: 스티커 붙이기 혜윤이는 최근에 다양한 대회를 참여하면서 노트북에 붙일 수 있는 스티커들을 많이 받았다. 스티커는 아래와 같이 사각 모눈종이 위에 인쇄되어 있으며, 스티커의 각 칸은 상하좌우로 모두 연 www.acmicpc.net #include #include #include using namespace std; int N, M, K; int sticker[10 + 2][10 + 2]; int laptop[40 + 2][40 + 2]; int r_tmp[10 + 2][10 + 2];// 회전 결과 저장용 배열 int r, c;// 스왑때문에 전역으로 선언// 이거 인자로 받아서 진행하면 안바뀜 ; int cnt_area()..
-
[백준 3055] 탈출C 프로그래밍/BOJ 2022. 9. 28. 21:30
https://www.acmicpc.net/problem/3055 3055번: 탈출 사악한 암흑의 군주 이민혁은 드디어 마법 구슬을 손에 넣었고, 그 능력을 실험해보기 위해 근처의 티떱숲에 홍수를 일으키려고 한다. 이 숲에는 고슴도치가 한 마리 살고 있다. 고슴도치는 제 www.acmicpc.net #include #include int R, C; char forest[50 + 2][50 + 2]; int visited[50 + 2][50 + 2]; struct _st { int type;// 홍수 -1 고슴도치 1 int x; int y; int cnt; }; int dx, dy;// 비버굴 int sx, sy;// 고슴도치 위치 std::queue Q; void input() { scanf("%d %..
-
[백준 11559] 뿌요뿌요C 프로그래밍/BOJ 2022. 9. 28. 20:49
https://www.acmicpc.net/problem/11559 11559번: Puyo Puyo 총 12개의 줄에 필드의 정보가 주어지며, 각 줄에는 6개의 문자가 있다. 이때 .은 빈공간이고 .이 아닌것은 각각의 색깔의 뿌요를 나타낸다. R은 빨강, G는 초록, B는 파랑, P는 보라, Y는 노랑이다. www.acmicpc.net #include #include #include #include char board[12 + 2][6 + 2]; struct _st { int x, y; }; std::vector V; std::queue Q; int visited[12 + 2][6 + 2]; void input() { for (int i = 0; i < 12; i++) { scanf("%s", &boar..
-
[백준 2589] 보물섬C 프로그래밍/BOJ 2022. 9. 27. 20:28
https://www.acmicpc.net/problem/2589 2589번: 보물섬 보물섬 지도를 발견한 후크 선장은 보물을 찾아나섰다. 보물섬 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 각 칸은 육지(L)나 바다(W)로 표시되어 있다. 이 지도에서 www.acmicpc.net #include #include int N, M; char map_char[50 + 2][50 + 2]; struct _st { int x; int y; int cnt; }; std::queue Q; int visited[50 + 2][50 + 2]; void input() { scanf("%d %d", &N, &M); for (int i = 0; i < N; i++) { scanf("%s", &ma..
-
[백준 2467, 2470] 용액, 두 용액C 프로그래밍/BOJ 2022. 9. 26. 20:14
https://www.acmicpc.net/problem/2467 2467번: 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하의 정수이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 오름차순으로 입력되며, 이 수들은 모두 - www.acmicpc.net https://www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 1,000,00 www.acmicpc.net #include #include #include..
-
[백준 2812] 크게 만들기C 프로그래밍/BOJ 2022. 9. 26. 19:28
https://www.acmicpc.net/problem/2812 2812번: 크게 만들기 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. www.acmicpc.net #include #include #include #include using namespace std; int N, K; string in_str; string ans; stack stk; void input() { cin >> N >> K; cin >> in_str; } void get_max() { int cnt = K; for (int i = 0; i 0 && stk.top() < in_str[i]..
-
[백준 2206, 14442, 16933] 벽 부수고 이동하기 1, 2, 3C 프로그래밍/BOJ 2022. 9. 25. 11:49
[백준 2206] 벽 부수고 이동하기 https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net 큐를 사용한 코드는 아래와 같다. 더보기 // Q : 12304kb76ms #include #include int N, M, K; char board[1000 + 2][1000 + 2]; int visited[1000 + 2][1000 + 2][2];// 0 벽을 안부수고 간다 1 벽을 부수고 간다. struct _qt { int x,..