JAVA68 [Java] 백준 17406. 배열 돌리기4 (시뮬레이션) 목차 1. 문제 접근 1_1. 문제 1_2. 포인트 2. 문제 풀이 과정 2_1. (내 풀이) 2_2. (다른 풀이1) 2_3. (다른 풀이2) 3. 고찰 3_1. 결론 3_2. 참고문헌 1. 문제 접근 1_1. 문제 17406번: 배열 돌리기 4 크기가 N×M 크기인 배열 A가 있을때, 배열 A의 값은 각 행에 있는 모든 수의 합 중 최솟값을 의미한다. 배열 A가 아래와 같은 경우 1행의 합은 6, 2행의 합은 4, 3행의 합은 15이다. 따라서, 배열 A의 www.acmicpc.net 1_2. 포인트 r, c, s를 배열로 받기 (또는 객체로) 회전 돌리는 순서 중에 최솟값이므로 회전 돌리는 순서는 순열로 받는다 => perm() 함수 순열로 순서를 다 정하면 배열을 돌린다 => cycle() 함수 .. 2022. 12. 10. [Java] 백준 16935. 배열 돌리기3 목차 1. 문제 접근 1_1. 문제 1_2. 포인트 2. 문제 풀이 과정 2_1. (내 풀이) 2_2. (다른 풀이1) 2_3. (다른 풀이2) 3. 고찰 3_1. 결론 3_2. 참고문헌 1. 문제 접근 1_1. 문제 16935번: 배열 돌리기 3 크기가 N×M인 배열이 있을 때, 배열에 연산을 R번 적용하려고 한다. 연산은 총 6가지가 있다. 1번 연산은 배열을 상하 반전시키는 연산이다. 1 6 2 9 8 4 → 4 2 9 3 1 8 7 2 6 9 8 2 → 9 2 3 6 1 5 1 8 3 4 2 9 → www.acmicpc.net 1_2. 포인트 구현은 크게 어렵지 않았지만 3, 4번 케이스의 경우에서 배열을 돌리면서 n, m의 크기가 변경되므로 조심해야 한다. 따라서, 3, 4번의 케이스의 경우 배.. 2022. 12. 7. [Java] BOJ 7576. 토마토 (BFS) 목차 1. 문제 접근 1_1. 문제 1_2. 포인트 2. 문제 풀이 과정 2_1. (내 풀이) 3. 고찰 3_1. 결론 3_2. 참고문헌 1. 문제 접근 1_1. 문제 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 1_2. 포인트 처음에 익은 토마토가 1개 이상 존재할 수 있다. 그 날의 익은 토마토들이 상하좌우를 다 탐색한 후, 다음 날로 넘어갈 수 있다. 따라서, 큐와 큐 사이즈를 이용해서 탐색한다. 예를 들어 오늘 익은 토마토가 2개면 2개 토마토의 상하좌우를 모두 탐색한 후, 다음날로.. 2022. 12. 6. [Java] BOJ 12865. 평범한 배낭 (DP) 목차 1. 문제 접근 1_1. 문제 1_2. 포인트 2. 문제 풀이 과정 2_1. (내 풀이) 2_2. (다른 풀이1) 2_3. (다른 풀이2) 3. 고찰 3_1. 결론 3_2. 참고문헌 1. 문제 접근 1_1. 문제 12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net 1_2. 포인트 부분집합으로 풀이하기에는 무게의 크기에 의해 시간초과 발생 => 메모제이션 필요 Bottom-up 방식 i \ dp 0 1 2 3 4 5 6 7 1 0 0 0 0 0 .. 2022. 12. 4. 이전 1 2 3 4 ··· 17 다음