[Silver III] ๋ฑ์ ๋งค๊ธฐ๊ธฐ - 2012 ๋ฌธ์ ๋งํฌ ์ฑ๋ฅ ์์ฝ ๋ฉ๋ชจ๋ฆฌ: 311344 KB, ์๊ฐ: 1864 ms ๋ถ๋ฅ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ, ์ ๋ ฌ ๋ฌธ์ ์ค๋ช
2007๋
KOI์ N๋ช
์ ํ์๋ค์ด ์ฐธ๊ฐํ์๋ค. ๊ฒฝ์์ผ ์ ๋ ์ธ ์๋น์์ง์ผ์, ๋ชจ๋ ํ์๋ค์ ์์ ์ด N๋ช
์ค์์ ๋ช ๋ฑ์ ํ ๊ฒ์ธ์ง ์์ ๋ฑ์๋ฅผ ์ ์ด์ ์ ์ถํ๋๋ก ํ์๋ค. KOI ๋ด๋น์กฐ๊ต๋ก ์ฐธ๊ฐํ ๊น์ง์ ์กฐ๊ต๋ ์ค์๋ก ๋ชจ๋ ํ์์ ํ๋ก๊ทธ๋จ์ ๋ ๋ ค ๋ฒ๋ ธ๋ค. 1๋ฑ๋ถํฐ N๋ฑ๊น์ง ๋์์ฐจ ์์ด ๋ฑ์๋ฅผ ๋งค๊ฒจ์ผ ํ๋ ๊น ์กฐ๊ต๋, ์ด์ฉ ์ ์์ด ๊ฐ ์ฌ๋์ด ์ ์ถํ ์์ ๋ฑ์๋ฅผ ๋ฐํ์ผ๋ก ์์๋ก ๋ฑ์๋ฅผ ๋งค๊ธฐ๊ธฐ๋ก ํ๋ค. ์์ ์ ๋ฑ์๋ฅผ A๋ฑ์ผ๋ก ์์ํ์๋๋ฐ ์ค์ ๋ฑ์๊ฐ B๋ฑ์ด ๋ ๊ฒฝ์ฐ, ์ด ์ฌ๋์ ๋ถ๋ง๋๋ A์ B์ ์ฐจ์ด (|A - B|)๋ก ์์นํํ ์ ์๋ค. ๋น์ ์ N๋ช
..
ALGORITHM ๐ค
์๊ณ ๋ฆฌ์ฆ ์ฐ์ต / ์ฝ๋ฉํ ์คํธ ์ค๋นhttps://school.programmers.co.kr/learn/courses/30/lessons/160586 import java.util.*; class Solution { public int[] solution(String[] keymap, String[] targets) { int[] answer = new int[targets.length]; Map pressCount = new HashMap(); // key: ๋ฌธ์, value: ์ต์ ์
๋ ฅ ํ์ for (String key : keymap) { // ๊ฐ ๋ฌธ์๋ฅผ ์
๋ ฅํ๊ธฐ ์ํด ํค๋ฅผ ๋๋ฅด๋ ์ต์ ํ์๋ฅผ ๋งต์ ์ ์ฅ for (int i = 0; i < key.length(); i++) { char ch = key.charAt(i); if (!p..
https://www.acmicpc.net/problem/2012 2012๋ฒ: ๋ฑ์ ๋งค๊ธฐ๊ธฐ ์ฒซ์งธ ์ค์ ์์ฐ์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 500,000) ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ๊ฑธ์ณ ๊ฐ ์ฌ๋์ ์์ ๋ฑ์๊ฐ ์์๋๋ก ์ฃผ์ด์ง๋ค. ์์ ๋ฑ์๋ 500,000 ์ดํ์ ์์ฐ์์ด๋ค. www.acmicpc.net import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] expectRank = new int[n]; // ์์ ๋ฑ์๋ฅผ ๋ด์ ๋ฐฐ์ด long disSat = 0; // ์ต์ ๋ถ๋ง๋์ ํฉ for (int i..
https://www.acmicpc.net/problem/1543 1543๋ฒ: ๋ฌธ์ ๊ฒ์ ์ธ์ค์ด๋ ์์ด๋ก๋ง ์ด๋ฃจ์ด์ง ์ด๋ค ๋ฌธ์๋ฅผ ๊ฒ์ํ๋ ํจ์๋ฅผ ๋ง๋ค๋ ค๊ณ ํ๋ค. ์ด ํจ์๋ ์ด๋ค ๋จ์ด๊ฐ ์ด ๋ช ๋ฒ ๋ฑ์ฅํ๋์ง ์ธ๋ ค๊ณ ํ๋ค. ๊ทธ๋ฌ๋, ์ธ์ค์ด์ ํจ์๋ ์ค๋ณต๋์ด ์ธ๋ ๊ฒ์ ๋นผ๊ณ ์ธ์ผ ํ www.acmicpc.net import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String document = sc.nextLine(); String search = sc.nextLine(); int count = 0; // ์ค๋ณต๋์ง ์๊ณ ๊ฒ์ํ๊ณ ์ถ์ ๋จ์ด๊ฐ ๋ฑ์ฅํ ์ ..
https://www.acmicpc.net/problem/2667 2667๋ฒ: ๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ ๊ณผ ๊ฐ์ด ์ ์ฌ๊ฐํ ๋ชจ์์ ์ง๋๊ฐ ์๋ค. 1์ ์ง์ด ์๋ ๊ณณ์, 0์ ์ง์ด ์๋ ๊ณณ์ ๋ํ๋ธ๋ค. ์ฒ ์๋ ์ด ์ง๋๋ฅผ ๊ฐ์ง๊ณ ์ฐ๊ฒฐ๋ ์ง์ ๋ชจ์์ธ ๋จ์ง๋ฅผ ์ ์ํ๊ณ , ๋จ์ง์ ๋ฒํธ๋ฅผ ๋ถ์ด๋ ค ํ๋ค. ์ฌ www.acmicpc.net import java.util.*; import java.io.*; public class Main { static int[][] arr; static boolean[][] visited; static int N, count; static ArrayList result; static int[] dx = {-1, 1, 0, 0}; static int[] dy = {0, 0, -1, 1}; public..
https://www.acmicpc.net/problem/2468 2468๋ฒ: ์์ ์์ญ ์ฌ๋๋ฐฉ์ฌ์ฒญ์์๋ ๋ง์ ๋น๊ฐ ๋ด๋ฆฌ๋ ์ฅ๋ง์ฒ ์ ๋๋นํด์ ๋ค์๊ณผ ๊ฐ์ ์ผ์ ๊ณํํ๊ณ ์๋ค. ๋จผ์ ์ด๋ค ์ง์ญ์ ๋์ด ์ ๋ณด๋ฅผ ํ์
ํ๋ค. ๊ทธ ๋ค์์ ๊ทธ ์ง์ญ์ ๋ง์ ๋น๊ฐ ๋ด๋ ธ์ ๋ ๋ฌผ์ ์ ๊ธฐ์ง ์๋ www.acmicpc.net import java.util.*; import java.io.*; public class Main { static int[][] arr; static boolean[][] visited; static int N; static int[] dx = {-1, 1, 0, 0}; static int[] dy = {0, 0, -1, 1}; static int[] result; public static void m..
https://school.programmers.co.kr/learn/courses/30/lessons/42586 import java.util.*; class Solution { public int[] solution(int[] progresses, int[] speeds) { int[] day = new int[progresses.length]; Queue queue = new LinkedList(); List answer = new ArrayList(); for (int i = 0; i < progresses.length; i++) { int temp = progresses[i]; while (temp < 100) { temp += speeds[i]; day[i] += 1; } queue.add(d..