본문 바로가기
반응형

PS 문제 풀이/Baekjoon446

[BOJ] 백준 1120 문자열 출처: https://www.acmicpc.net/problem/1120 Approach 문자열을 일일이 비교해서 차이를 최대로 하는 구간을 찾는 문제입니다. 주어지는 문자열 A 2021. 2. 22.
[BOJ] 백준 14620 꽃길 출처: https://www.acmicpc.net/problem/14620 Input 6 1 0 2 3 3 4 1 1 1 1 1 1 0 0 1 1 1 1 3 9 9 0 1 99 9 11 3 1 0 3 12 3 0 0 0 1 Output 12 위와 같이 각 1평당 가격이 주어졌을 때, 꽃 3개를 심기위한 최소 비용을 구합니다. ⅰ. 만개된 꽃잎이 화단을 벗어나면 죽기 때문에 꽃을 가장자리에 심을 수는 없다. 결국, □범위에서 3곳을 지정해야 한다. ⅱ. 만개된 꽃잎이 겹치지 않으려면 어떻게 해야 할까? ▶ 『 』 영역에 꽃이 만개 되었으므로, 『 X 』에는 다른 씨앗을 놓으면 꽃잎이 겹친다. 구현 순서 ① 제일 바깥 테두리를 제외한 영역 탐색 ② 심어진 씨앗의 좌표가 (A.x, A.y) 다른 씨앗 좌표가 .. 2021. 2. 22.
[BOJ] 백준 7569 토마토 출처: https://www.acmicpc.net/problem/7569 Input 5 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 Output 4 2차원으로 해결하는 [BOJ] 백준 7576 토마토에서 달라진 점은 상자가 여러개 쌓여 있으므로 3차원으로 이를 처리해야 한다. [BOJ] 백준 7576 토마토 출처: https://www.acmicpc.net/problem/7576 Input 6 4 1 -1 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 -1 1 Output 6 - 익은 토마토(1)는 인접한 익지않은 토마토에 영향을 줘서 익게 한다. (영향을 주는.. zoosso.tistory.com impo.. 2021. 2. 22.
[BOJ] 백준 7576 토마토 출처: https://www.acmicpc.net/problem/7576 Input 6 4 1 -1 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 -1 1 Output 6 - 익은 토마토(1)는 인접한 익지않은 토마토에 영향을 줘서 익게 한다. (영향을 주는 것에는 하루가 걸리며, 상하좌우로 영향을 준다.) - 토마토가 놓여있지 않은 곳(-1)이 존재한다. 모든 토마토가 익기까지 최소 일수를 출력하시오. (토마토가 모두 익지는 못하는 상황이면 -1을 출력해야 한다.) BFS 처리할 때, 출발점을 초기에 주어진 익은 토마토(1)를 모두 Queue에 담아둔다. (마치 동시다발적으로 탐색하는 것처럼...) 방문 표시로 이미 익은 토마토에는 재방문 하지 않는다. import java.. 2021. 2. 22.
[BOJ] 백준 8979 올림픽 출처: https://www.acmicpc.net/problem/8979 Input 4 3 1 1 2 0 2 0 1 0 3 0 1 0 4 0 0 1 Output 2 국가별로 금, 은, 동 개수로 올림픽 순위를 구해보려고 합니다. 1. 금메달 수가 더 많은 국가 2. 금메달 수가 같으면 은메달 수가 더 많은 국가 3. 금, 은메달 수가 모두 같으면 동메달 수가 더 많은 국가 (개수가 동일하면 두 나라의 등수는 같습니다.) * K 국가가 K 번째로 입력되는 것은 아닙니다. Input 4 2 1 3 0 0 3 0 0 2 4 0 2 0 2 0 2 0 Output 2 ① 금, 은, 동 우선순위별로 우선순위 큐에 넣는다. ② 큐에서 poll() 하면서 등수를 매긴다. (* 공동 순위 주의) import java.u.. 2021. 2. 22.
[BOJ] 백준 3425 고스택 출처: https://www.acmicpc.net/problem/3425 Input DUP MUL NUM 2 ADD END 3 1 10 50 NUM 1 NUM 1 ADD END 2 42 43 NUM 600000000 ADD END 3 0 600000000 1 QUIT Output 3 102 2502 ERROR ERROR 600000000 ERROR 600000001 알려져 있는 스택을 변형한 문제로 입력 횟수, 데이터 범위, 예외 처리 등 코드 최적화가 필요한 문제입니다. Sample Case 분석 DUP: 스택의 첫번째 숫자를 복사해서 저장 → MUL: 스택의 첫번째 숫자와 두번째 숫자를 곱해서 저장 → NUM 2: 숫자 2를 스택에 저장 → ADD: 첫번째 숫자와 두번째 숫자를 더합니다. if) 처음.. 2021. 2. 22.
[BOJ] 백준 2563 색종이 출처: https://www.acmicpc.net/problem/2563 Input 3 3 7 15 7 5 2 Output 260 board[][] 영역에 색종이가 붙여지는 영역을 『1』 로 표시합니다. 겹쳐지는 경우도 덮어씌워지기 때문에 넓이를 쉽게 구할 수 있습니다. #define _CRT_SECURE_NO_WARNINGS #include int N, answer, board[101][101]; void pastePaper(int x, int y) { for (int i = x; i < x + 10; i++) { for (int j = y; j < y + 10; j++) { board[i][j] = 1; } } } int main(void) { // freopen("input.txt", "r", st.. 2021. 2. 22.
[BOJ] 백준 17825 주사위 윷놀이 삼성 SW 코딩 테스트 준비(A형) 삼성 SW 기출 모음 출처: https://www.acmicpc.net/problem/17825 Input 1 2 3 4 1 2 3 4 1 2 Output 190 ex) (10)에서 주사위가 『5』가 나온다면 (26)이 아닌 (30)에 이동 ex) (30)에서 주사위가 『5』가 나온다면 (19)가 아닌 (30)에 이동 따라서 각 말들이 이동 경로는 4가지 입니다. 해당 문제는 윷놀이판과 4개의 말을 어떻게 구현할지가 중요합니다. 배열을 통해서도 가능하지만 연결 리스트(Linked List) 구조 이용. 10개의 주사위가 말에 배치(order)되는 경우의 수 = 410= 1,048,576 순열 코드 import java.io.BufferedReader; import ja.. 2021. 2. 22.
[BOJ] 백준 17822 원판 돌리기 삼성 SW 코딩 테스트 준비(A형) 삼성 SW 기출 모음 출처: https://www.acmicpc.net/problem/17822 Input 4 4 3 1 1 2 3 5 2 4 2 3 1 3 5 2 1 3 2 2 0 1 3 1 3 2 0 2 Output 22 시뮬레이션 각각의 원에 일정한 간격으로 M(=4)개의 숫자들이 배치되어 있습니다. 특정 좌표 (i, j)에서 인접한 좌표는 (i-1, j) / (i+1, j) / (i, j-1) / (i, j+1)에 해당합니다. ▶ (2, 0, 1) = 2, 4번 원판을 시계 방향으로 1칸 회전. 인접한 좌표간에 동일한 숫자가 존재하기에 해당 수들을 모두 지웁니다. (지워지지 않은 숫자들의 이동은 없습니다.) → 각 원판의 숫자들의 합 = 30 ▶ (3, 1, 3.. 2021. 2. 22.
[BOJ] 백준 5373 큐빙 삼성 SW 코딩 테스트 준비(A형) 삼성 SW 기출 모음 출처: https://www.acmicpc.net/problem/5373 Input 4 1 L- 2 F+ B+ 4 U- D- L+ R+ 10 L- U- L+ U- L- U- U- L+ U+ U+ Output rww rww rww bbb www ggg gwg owr bwb gwo www rww 정육면체(6) * 시계/반시계 방향(2) = 12가지 회전이 존재합니다. ※ [반시계 방향 이동 1번 = 시계 방향 이동 3번] 특성을 이용할 수도 있습니다. ex) F+: 앞면을 시계 방향으로 한 번 회전 = F- 앞면을 시계 방향으로 3번 회전 처음 전개도는 다음과 같습니다. F+(앞 면을 시계방향으로 회전) 실행 후, 전개도는 아래와 같습니다. 차이점은 .. 2021. 2. 22.
반응형