본문 바로가기
반응형

알고리즘/완전탐색38

[백준][Python] 2160번 그림 비교 2160번: 그림 비교 N(2 ≤ N ≤ 50)개의 그림이 있다. 각각의 그림은 5×7의 크기이고, 두 가지 색으로 되어 있다. 이때 두 가지의 색을 각각 ‘X’와 ‘.’으로 표현하기로 하자. 이러한 그림들이 주어졌을 때, 가장 비 www.acmicpc.net 코드 def check(i,j): cnt = 0 for a in range(5): for b in range(7): if n_list[i][a][b] != n_list[j][a][b]: cnt += 1 return cnt n = int(input()) n_list = [] for i in range(n): i_list= [] for j in range(5): i_list.append(list(input())) n_list.append(i_list).. 2022. 7. 18.
[백준][Python] 18512번 점프 점프 18512번: 점프 점프 첫째 줄에 두 사람이 한 번에 멀리뛰기를 하는 거리 X, Y와 시작 지점의 위치 값 P1, P2가 각각 공백을 기준으로 구분되어 자연수로 주어진다. (1 ≤ X, Y, P1, P2 ≤ 100) www.acmicpc.net 코드 x,y,p1,p2 = map(int,input().split()) cnt = 0 while 1: if p1 == p2: break if cnt > 1000: p1 = -1 break if p1 > p2: p2 += y elif p1 < p2: p1 += x cnt += 1 print(p1) 설명 p1과 p2가 같으면 while문을 빠져나오고, 만약 다르면 p2가 클 경우 p1을 x만큼 증가시켰고, p1이 클 경우 p2를 y만큼 증가시켰다. 공통적으로 지나는.. 2022. 7. 18.
[백준][Python] 1145번 적어도 대부분의 배수 1145번: 적어도 대부분의 배수 첫째 줄에 다섯 개의 자연수가 주어진다. 100보다 작거나 같은 자연수이고, 서로 다른 수이다. www.acmicpc.net 코드 n_list = list(map(int,input().split())) n = min(n_list) while 1: cnt = 0 for i in range(5): if n % n_list[i] == 0: cnt +=1 if cnt >= 3: break n += 1 print(n) 설명 입력 받은 n_list의 숫자들 중에서 가장 작은 수를 n이라 하고 n 부터 1씩 증가시켜가면서 n_list에 있는 숫자들과 나눈 나머지 값이 0이면 cnt를 증가시켜줬다. cnt 값이 3 이상이면 while문을 빠져나온다. 2022. 7. 15.
[백준][Python] 13410번 거꾸로 구구단 13410번: 거꾸로 구구단 일반적인 구구단에서 가장 큰 수는 마지막 항의 값이 제일 크다. 거꾸로 구구단에서는, 각 항에 구구단의 계산 결과로 나온 값을 뒤집어 저장을 한다. 이렇게 하면 가장 큰 값이 항상 마지막이 www.acmicpc.net 코드 n,k = map(int,input().split()) max_n = 0 for i in range(1,k+1): num = n*i rev_str = int(str(num)[::-1]) max_n = max(max_n,rev_str) print(max_n) 설명 입력받은 수 n에 1부터 k까지의 숫자를 곱한 값을 차례대로 num이라고 했다. num을 string 형으로 바꿔준 후 문자열 슬라이싱을 이용해서 문자열을 뒤집어줬다. [처음:끝:규칙] 순으로 넣으.. 2022. 7. 15.
반응형