"꾸준하고 완벽한 한 걸음"

practice 108

[백준 14007] Small Weird Measurements [Java]

문제https://www.acmicpc.net/problem/14007 풀이주어진 시퀀스에 대해 문제에서 주어진 이상한 구간의 수를 구하는 문제다.이상한 구간은 다음과 같다.자기 자신은 이상한 구간이 된다.이전 요소의 차와 현재 요소의 차가 부호가 다르면 이상한 구간이 된다. // Solve int cnt = N; for (int i = 0; i 요소의 차가 0이거나, 이전 요소의 차와 현재 요소의 차가 동일할 때는 이상한 구간이 아니게 된다.위 조건문을 통해 이상한 구간이 맞다면 탐색을 중단하고, 다음 구간에 대한 탐색을 진행하자. if (diff == 0 || prevDiff != 0 && diff * prevDiff > 0) { ..

[백준 20410] 추첨상 사수 대작전! (Easy) [Java]

문제https://www.acmicpc.net/problem/20410 풀이입력으로 주어지는 m, Seed, $X_1$, $X_2$에 대해X1 = (a × Seed + c) % mX2 = (a × X1 + c) % m을 만족하는 a, c를 출력하면 된다.a, c의 범위는 0 ~ m - 1 이며 m은 100이하의 소수이므로 완전 탐색으로 풀이가 가능하다. for (int a = 0; a 소스코드https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/practice/20410.java

[백준 26310] Finalists [Java]

문제https://www.acmicpc.net/problem/26310 풀이문제에서 주어진 절차 A1 ~ A4에 따라 각 지역의 경쟁력을 계산하고, 최종 팀을 결정하는 문제다.A1에서는 주어진 가중치에 따라 점수를 계산하면 된다. // A1 // 입력 순서: s p_t p_u r_t r_u f // site score = 0.56 * r_u + 0.24 * r_t + 0.14 * p_u + 0.06 * p_t + 0.3 * f for (int i = 0; i A2에서는 경쟁력을 기준으로 내림차순 정렬하면 된다. // A2 regionals.sort((a, b)-> Double.compare(b.score, a.score));A3에..

[백준 12571] Rope Intranet (Small) [Java]

문제https://www.acmicpc.net/problem/12571 풀이선분의 양쪽 끝 위치 정보가 주어졌을 때, 선분들의 교차점을 모두 세는 문제다.N은 2이하로, 단순 비교를 통해 선분의 시작점에 대해 교착점을 탐색하면 된다. // Solve if (N == 1) { sb.append(String.format("Case #%d: 0\\n", t)); } else { final int A1 = input[0]; final int B1 = input[1]; input = Arrays.stream(br.readLine().split(" "..

[백준 12352] Hedgemony (Large) [Java]

문제https://www.acmicpc.net/problem/12352 풀이이전의 Hedgemony (Small) 에서 N이 1,000으로 늘어난 문제다.2025.03.02 - [PS/Baekjoon Online Judge] - [백준 12351] Hedgemony (Small) [Java] [백준 12351] Hedgemony (Small) [Java]문제https://www.acmicpc.net/problem/12351 풀이입력받은 N개의 덤불 높이에 대해 문제의 조건대로 높이를 조절하는 문제다.2번 덤불부터 N - 1번 덤불에 대해 i번 덤불의 높이가 i - 1, i + 1덤불의 평균보다kyr-db.tistory.com 기존의 풀이로도 동일하게 해결할 수 있다.소스코드https://github.co..

[백준 12351] Hedgemony (Small) [Java]

문제https://www.acmicpc.net/problem/12351 풀이입력받은 N개의 덤불 높이에 대해 문제의 조건대로 높이를 조절하는 문제다.2번 덤불부터 N - 1번 덤불에 대해 i번 덤불의 높이가 i - 1, i + 1덤불의 평균보다 큰 경우에 평균으로 길이를 조절해야 한다. // Solve for (int j = 1; j avg) { A[j] = avg; } }N - 1번째 덤불의 높이를 출력해주자. sb.append("Case #").append(i).append(": ").append(A[N - 2]).append("\\n"); }소스코..

[백준 11970] Fence Painting [Java]

문제https://www.acmicpc.net/problem/11970 풀이주어지는 A, B, C, D에 대해 A ~ B구간의 길이와 C ~ D구간의 길이를 구하는 문제다.만약 두 구간이 겹친다면, 중복되는 구간을 제외한 길이를 출력해야 한다.조건식으로 두 구간이 겹치치 않는다면 각 구간의 길이를, 겹친다면 두 구간의 전체 길이를 출력했다.System.out.println(C >= B || D 소스코드https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/practice/11970.java

[백준 11908] 카드 [Java]

문제https://www.acmicpc.net/problem/11908 풀이N개의 카드 중 문제에서 주어진 조건대로 N - 1개의 카드를 제거하는 문제다.결국 가장 큰 수가 남게 되기 때문에 배열을 정렬 후 0 ~ N - 1까지의 합을 출력하면 된다. // Solve Arrays.sort(arr); int sum = 0; for (int i = 0; i 소스코드https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/practice/11908.java

[백준 17554] City of Lights [Java]

문제https://www.acmicpc.net/problem/17554 풀이처음에는 켜져있는 N개의 전구에 대해 K번 동안 N이하의 i배수 번째의 전구들을 토글할 때 최대한 많이 꺼진 전구의 수를 구하는 문제다.처음에는 전구를 전부 켜주고, boolean[] light = new boolean[N]; Arrays.fill(light, true);K개의 i를 입력 받아, i의 배수들을 전부 토글하면 된다. int res = 0; while (K-- > 0) { final int i = Integer.parseInt(br.readLine()); // Solve int cur = -1; ..