본문 바로가기

알고리즘231

[BAEKJOON] 25682 체스판 다시 칠하기 2 문제 요약 알고리즘 분류: 구간합, 누적합, 수학 난이도: Gold5 문제내용: N × M 보드판에서 K × K 크기인 보드로 잘라서 다시 색칠한다. 최소한의 칠해야 하는 개수를 구해라 사이트 : https://www.acmicpc.net/problem/25682 25682번: 체스판 다시 칠하기 2 첫째 줄에 정수 N, M, K가 주어진다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 문제풀이 이번 문제는 데이터의 개수가 최대 2000 × 2000이고 제한시간이 1초라서 완전 탐색으로 하면 시간이 초과된다. 그래서 2차원 배열 구간합을 응용해야 된다. 구간합에 대한 이론은 아래의 사이트에 참조하면 된다. https://jih.. 2022. 11. 14.
[BAEKJOON] 8545 Zadanie próbne 문제 요약 알고리즘 분류: 문자열 난이도: Bronze5 문제내용: 문자열 거꾸로 출력해라 사이트 주소: https://www.acmicpc.net/problem/8545 8545번: Zadanie próbne Napisz program, który odwraca podane słowo trzyliterowe. www.acmicpc.net 문제풀이 문자열 reverse관련 함수와 문법 사용해서 처리하면 된다. Code Python print(input()[::-1]) Java import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static vo.. 2022. 11. 14.
[BAEKJOON] 6810 ISBN 문제 요약 알고리즘 분류: 베열, 정렬 난이도: Bronze5 문제내용: 9780921418 뒤에 숫자 3개 추가한다. 각 숫자마다 1, 3 교차로 곱해서 더한 값을 출력해라 사이트 주소: https://www.acmicpc.net/problem/2587 Code Python code = [9, 7, 8, 0, 9, 2, 1, 4, 1, 8] code.extend([int(input()) for _ in range(3)]) s = 0 for i in range(len(code)): s += code[i] * (1, 3)[i % 2] print("The 1-3-sum is", s) Java import java.io.BufferedReader; import java.io.IOException; import.. 2022. 11. 13.
[BAEKJOON] 2587 대표값2 문제 요약 알고리즘 분류: 베열, 정렬 난이도: Bronze2 문제내용: 5개 정수 배열에 평균값과 중간값을 출력해라 사이트 주소: https://www.acmicpc.net/problem/2587 2587번: 대표값2 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + www.acmicpc.net 문제풀이 이번 문제는 정렬하는 함수 sort와 sum 함수 사용할 줄 알면된다. 크기 5인 배열 리스트를 선언한다. 배열 정렬한다.(Python: sort, Java: Arrays.sort) sum 함수 사용해서 나누기 5하면 평.. 2022. 11. 12.
[BAEKJOON] 10986 나머지 합 문제 요약 알고리즘 분류: 구간합, 누적합, 수학 난이도: Gold3 문제내용: N개 수와 연속적인 구간의 합이 M인 개수를 구해하 사이트 : https://www.acmicpc.net/problem/10986 10986번: 나머지 합 수 N개 A1, A2, ..., AN이 주어진다. 이때, 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 구하는 프로그램을 작성하시오. 즉, Ai + ... + Aj (i ≤ j) 의 합이 M으로 나누어 떨어지는 (i, j) www.acmicpc.net 문제풀이 이번문제는 구간합에서 응용한 문제이다. 구간합에 대한 이론은 아래의 사이트에 참조하면 된다. https://jih3508.tistory.com/50 [알고리즘 이론] 구간합, 누적합(prefix su.. 2022. 11. 11.
[BAEKJOON] 11660 구간 합 구하기 5 문제 요약 알고리즘 분류: 구간합, 누적합, 수학 난이도: Silver1 문제내용: 2차원 배열을 주고 (x1, y1) ~ (x2, y2)의 합을 구해 사이트 : https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net 문제풀이 이번문제는 2차원 배열의 누적합의 기본 문제이다. 누적합, 구간합에 대한 설명은 밑에 사이트에 참조하면된다. 밑에 사이트에 2차원 배열 누적합, 구간합을 이해하고 예제 코드에서 몇개만 .. 2022. 11. 10.