728x90 Problem Solving103 [백준] 1018 체스판 다시 칠하기 python 알고리즘 문제 문제 1018. 체스판 다시 칠하기 1. 나의 코드와 발상 과정 n, m = map(int, input().split()) board_list = [] for i in range(n): board_list.append(input()) # 연산(보드판을 일부 잘라 체크무늬로 칠해져 있는지 확인) test_list = [] for i in range(n - 7): # 찾을 출발점 for j in range(m - 7): first_W = 0 first_B = 0 for k in range(i, i + 8): for l in range(j, j + 8): if (k + l) % 2 == 0: if board_list[k][l] != 'W': first_W += 1 if board_list[k][l] != 'B.. 2022. 4. 22. [백준] 7568 덩치 python 알고리즘 문제 문제 7568. 덩치 1. 나의 코드와 발상 과정 import sys n = int(sys.stdin.readline()) num_list = [] for i in range(n): x, y = map(int, sys.stdin.readline().split()) num_list.append([x, y]) def dungchi(x, y): k = 0 for i in range(n): if x < num_list[i][0] and y < num_list[i][1]: k += 1 return k rank_list = [] for i in range(n): rank_list.append(dungchi(num_list[i][0], num_list[i][1])) for i in range(n): print(ran.. 2022. 4. 20. [백준] 11650 좌표 정렬하기 python 알고리즘 문제 문제 11650. 좌표 정렬하기 1. 나의 코드와 발상 과정 import sys n = int(sys.stdin.readline()) num_list = [] for i in range(n): m = list(map(int, sys.stdin.readline().split())) num_list.append(m) num_list.sort() for i in range(n): print(num_list[i][0], num_list[i][1]) ###################### #오답 import sys n = int(sys.stdin.readline()) num_list = [] for i in range(n): m = list(map(int, sys.stdin.readline().split())).. 2022. 4. 20. [백준] 10989 수 정렬하기 python 알고리즘 문제 문제 10989. 수 정렬하기 3 1. 나의 코드와 발상 과정 import sys n = int(sys.stdin.readline()) num_list = [0]*10001 for i in range(n): num = int(sys.stdin.readline()) num_list[num] += 1 for i in range(10001): if num_list[i] != 0: for j in range(num_list[i]): print(i) 굉장히 제한된 시간과 메모리이기 때문에 리스트를 하나 더 생성해서 정렬을 한다던지 하는 방법이 활용될 수 없다. 그래서 10000까지 나오는 자연수이기 때문에 인덱스를 10000까지 가지는 빈 리스트를 만들어서 연속으로 입력되는 num값을 num_list의 인덱스로 .. 2022. 4. 20. [백준] 11050 이항 계수 python 알고리즘 문제 문제 11050. 이항 계수 1 1. 나의 코드와 발상 과정 def fac(n): if n == 0: return 1 return n * fac(n-1) n, k = map(int, input().split()) print(fac(n)//(fac(k)*fac(n-k))) def를 처음 알고리즘 공부에 사용하기 시작하였다. 이항계수가 뭔지 몰라 구글 선생님께 물어보다가 이항계수는 팩토리얼 개념이 들어가 있다는 것을 알았다. 아하... 조합... 계속해서 곱하는 것을 다음과 같이 할 수 있다는 정보를 얻을 수 있었다. (1) 반복문 (2) 재귀함수 구현 이제 함수도 구현해야 하니까.. 직접 네 줄의 코드를 짜보았다. 어제 재귀함수 강의 살짝 듣고 복습했는데 구상을 하려고 하니 머리가 아팠지만 금방 떠올려서 .. 2022. 4. 20. [백준] 2869 달팽이는 올라가고 싶다 python 알고리즘 문제 문제 2869. 달팽이는 올라가고 싶다. 1. 나의 코드와 발상 과정 ### 시간초과 a, b, v = map(int, input().split()) day = v // (a - b) + 1 len_sum = 0 for i in range(1, day): len_sum += a if len_sum >= v: print(i) break else : len_sum -= b ##### a, b, v = map(int, input().split()) day = (v - b) // (a - b) if (v - b) % (a - b) == 0: print(day) else: print(day + 1) 0.15초라는 시간제한이 있기 때문에 최소한의 반복을 해야 한다. 반복문을 쓰지 않고 풀어보았다. (위에껀 써봤더니.. 2022. 4. 20. 이전 1 ··· 13 14 15 16 17 18 다음 728x90