728x90
반응형

코딩 17

[Baekjoon 11660 / python / 실버1] 구간 합 구하기 5

누적 합, DP 문제이다.2차원 리스트를 사용하기 때문에 단일 리스트보단 조금 더 복잡하다. # 실버1 -> 누적 합"""N : 표의 크기M : 합을 구해야 하는 횟수"""import sysinput = sys.stdin.readlineN, M = map(int, input().split())origin = [list(map(int, input().split())) for _ in range(N)]# dp(누적 합)테이블 생성dp = [[0] * (N + 1) for _ in range(N + 1)]for i in range(1, N + 1):    for j in range(1, N + 1):        dp[i][j] = origin[i-1][j-1] + dp[i][j-1] + dp[i-1][j] ..

[Baekjoon 1780 / python / 실버2] 종이의 개수

무난한 분할 정복 문제이다. 재귀함수가 사용된다. # 실버2 -> 분할 정복, 재귀"""N : 1 또는 3의 k승-1, 0, 1 로 이루어진 N * N 행렬하나의 수로 이루어져 있지 않다면 9개로 분할분할을 마친 후, 각 숫자로 이루어진 종이가 몇개인지 출력"""import sysinput = sys.stdin.readlineN = int(input())table = [list(map(int, input().split())) for _ in range(N)]minus, zero, plus = 0, 0, 0def divide(x, y, n):    global minus, zero, plus    prev = table[x][y] # 기준이 될 숫자 설정    for i in range(x, x + n):..

[Baekjoon/JAVA] 백준 10815번 숫자 카드

주어지는 숫자의 범위가 매우 크기 때문에, 일일이 비교하는 방법보다는 이분 탐색 알고리즘을 이용해야 합니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); StringTokenizer st; int n = Integer.parseInt(br.readLine()); int cards[] = new int[n]; st = new StringTok..

[Baekjoon/JAVA] 백준 1032번 명령 프롬프트

입력받은 문자열들의 각 문자를 모두 비교하여, 모두 같지 않다면 해당 문자를 ?로 바꾸는 문제입니다. 모두 같다면 문자를 그대로 출력합니다. 입력받는 문자열들의 길이는 동일합니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int n = Integer.parseInt(br.readLine()); String arr[] = new Strin..

Algorithm/문자열 2023.06.30

[Baekjoon/JAVA] 백준 10988번 팰린드롬인지 확인하기

입력받은 문자열이 팰린드롬인지 확인하는 문제입니다. 앞에서 읽을때와 뒤에서 읽을때의 결과가 같으면 팰린드롬입니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); String str = br.readLine(); int start = 0; int end = str.length()-1; int result = 1; while(start < end..

Algorithm/문자열 2023.06.30

[Baekjoon/JAVA] 백준 9086번 문자열

정해진 횟수만큼 문자열을 입력받고, 문자열의 맨 앞과 맨 뒤에있는 문자열을 출력해야 합니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int n = Integer.parseInt(br.readLine()); for(int i=0; i "A" str.charAt(3) -> "D" 이런 결과가 나오게 됩니다. 이렇게 charAt()함수를 이..

Algorithm/문자열 2023.06.30

[Baekjoon/JAVA] 백준 14659번 한조서열정리하고옴ㅋㅋ

n개의 봉우리(활잡이)가 존재합니다. 각 봉우리는 높이가 다르고, 높은 봉우리에 있는 활잡이가 낮은 봉우리를 처치할 수 있습니다. 공격은 오른쪽으로만 진행되고, 더 높은 봉우리를 만날 시 패배합니다. 이 때 가장 많은 적을 처치하는 봉우리는 몇명의 적을 처치할 수 있는지 출력해야 합니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); Stri..

[Baekjoon/JAVA] 백준 10811번 바구니 뒤집기

1번부터 N번까지의 바구니가 존재합니다. i번~j번 까지의 바구니만을 역순으로 뒤집습니다. 이 작업을 M번 반복합니다. 그리고 마지막 바구니의 순서를 출력하는 문제입니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); StringTokenizer st; st = new StringTokenizer(br.readLine()); int n = I..

[Baekjoon/JAVA] 백준 10810번 공 넣기

1번~N번의 바구니가 있다. 1번~N번의 공이 있다. 공 갯수는 제한이 없다. i번부터 j번까지의 바구니에, k번이 적힌 공을 넣는다. 이 과정은 총 M번 진행되며, 만약 바구니에 공이 이미 있을 경우 새로운 공으로 교체된다. 입니다. 결국 각 바구니에 마지막으로 남아있는 공이 몇번 공인지 출력해야 합니다. import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = ..

[Baekjoon/JAVA] 백준 10871번 X보다 작은 수

x보다 작은 수만 골라서 출력해야 하는 문제입니다. import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); StringTokenizer st; st = new StringTokenizer(br.readLine()," "); int n = Integer.parseInt(st.nextToken()); int x = Integer...

728x90
반응형