목록CodingTest/Java (342)
기록방
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/n8wKN/btrMNSInMUR/v4lcWMuk1P0mIRD6ClPVT0/img.png)
👉 문제링크 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net 🔸 문제 분석 🔸 2차원 배열의 구간 합을 출력한다. 시간초과를 방지하기 위해 구간 합을 미리 계산한다. i = 1일때와 j = 1 는 1차원 배열의 구간 합 채우기 공식이 같다 : sum[i] = sum[i-1] + arr[i] 2차원 배열 구간합 배열을 채우는 공식 : sum[i][j] = sum[i][j-1] + sum[i-1][j] - sum[i-1][j-1] + arr[i][j] 구하려는 인덱스의 위..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bcvCpu/btrMPmBdKSb/CWfkXdj6OQxkNqMS54juck/img.png)
👉 문제링크 1380번: 귀걸이 입력은 번호를 가진 시나리오들로 구성됩니다. 시나리오 번호는 1부터 순서대로 증가하고, 각 시나리오는 아래의 내용을 포함합니다. 한 줄에 귀걸이를 압수당한 여학생의 수, n (1 ≤ n ≤ 100)이 www.acmicpc.net 🔸 문제 분석 🔸 학생들 수 n, 학생들 명단, 귀걸이 압수/반환 리스트가 입력된다. 리스트에 1번 등장한 학생 인덱스를 찾아 시나리오 번호와 학생 이름을 반환한다. n으로 0이 입력될 때 까지 반복한다. 🔸 코드 🔸 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bnfHox/btrMFiAvBl0/T5hGOviZA96ZupKSkKOH21/img.png)
👉 문제링크 1343번: 폴리오미노 첫째 줄에 사전순으로 가장 앞서는 답을 출력한다. 만약 덮을 수 없으면 -1을 출력한다. www.acmicpc.net 🔸 문제 분석 🔸 'X'와 '.'으로 이루어진 문자열이 입력된다. 'X"를 "AAAA"와 "BB"로 교체해서 출력한다. 불가능하면 -1을 출력한다. 🔸 코드 🔸 import java.util.Scanner; public class Main { public static String AB(String temp){ String re = ""; int len = temp.length(); if (len % 2 != 0) { System.out.println(-1); System.exit(0); } for (int i = 0; i < len / 4; i++) r..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/pS7Mc/btrMyhvggx4/VkWAcFe1VkHXRrqLkXxnkK/img.png)
👉 문제링크 1340번: 연도 진행바 평년일 때, 각 달은 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31일이 있다. 윤년에는 2월이 29일이다. 윤년은 그 해가 400으로 나누어 떨어지는 해 이거나, 4로 나누어 떨어지면서, 100으로 나누어 떨어지지 www.acmicpc.net 🔸 문제 분석 🔸 입력 받은 시간이 해당 년도에서 몇 퍼센트 진행 된 건지 출력한다. 문자열 한 줄로 입력되므로 형식에 맞게 받아야한다. 윤년을 확인해야한다. 🔸 코드 🔸 import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc =..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dnGZUg/btrMyh1RKzc/k8mGUQcpBkMFfqLuDrAnGK/img.png)
👉 문제링크 1331번: 나이트 투어 나이트 투어는 체스판에서 나이트가 모든 칸을 정확히 한 번씩 방문하며, 마지막으로 방문하는 칸에서 시작점으로 돌아올 수 있는 경로이다. 다음 그림은 나이트 투어의 한 예이다. 영식이는 6× www.acmicpc.net 🔸 문제 분석 🔸 입력으로 주어진 루트가 체스의 나이트가 중복없이 움직이고, 마지막 까지 돌아올 수 있는지 확인한다. 나이트는 8가지 방식으로 움직일 수 있다. (말 모양) 중복된 곳을 밟으면 안된다. 루트의 처음과 마지막도 나이트가 오갈 수 있어야 한다. 🔸 코드 🔸 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new ..