본문 바로가기

분류 전체보기200

[Python] 백준 - 연구소 import sysimport copyfrom collections import dequefrom itertools import combinationsinput = sys.stdin.readlinedef bfs(): for i in combinations(blank, 3): # 빈 칸 위치중에 3개 combination 조합 만들어내기 queue = deque() # 큐 생성 trial = copy.deepcopy(grid) # 배열 복사해두기 for y, x in i: # 빈 칸 생성! trial[y][x] = 1 for i in range(len(virus)): # 바이러스 큐에 담기 queue.append.. 2024. 5. 18.
[Python] 백준 - 영단어 암기는 괴로워 https://www.acmicpc.net/problem/20920 나의 답 (틀림)from collections import defaultdictn, m = map(int, input().split())strings = [input() for _ in range(n)]r_string = defaultdict(int)p_result = []for i in strings: if len(i) >= m: r_string[i] += 1r_string = dict(sorted(r_string.items(), key=lambda x: x[0]))r_string = dict(sorted(r_string.items(), key=lambda x: len(x[0]),reverse=True))r_strin.. 2024. 5. 16.
[Python] 백준 - 덩치 https://www.acmicpc.net/problem/7568 나의 답N = int(input())result = []r = []for i in range(0,N): n = list(map(int,input().split())) result.append(n) for index, value in enumerate(result): cnt = 0 for i, v in enumerate(result): if i==index: # 본인 제외 continue if value[0]  값 입력  리스트로 받아두고, 값마다 본인 제외하고 다른 사람들과 비교해서 본인보다 큰 덩치가 있을 경우 카운트해준다.카운트를 리스트에 담아서 출력하면 .. 2024. 5. 14.
[Python] 백준 - 퇴사 https://www.acmicpc.net/problem/14501 나의 답... (틀림)N = int(input())ti = []pi = []for i in range (N): t = list(map(int,input().split())) ti.append(t[0]) pi.append(t[1])result = []MAX = 0for i in range (N): for j in range(i,N,1): a = [] while (j모든 경우의수를 넣어보려고 했는데, 안되네... 내가 못찾은 경우가 있나보다. 테스트 케이스에서는 마지막 테케가 원하는 값대로 안나왔다.  다른 사람 답N = int(input())t = []p = []dp = [0 for _ .. 2024. 5. 13.
[Python] 백준 - 한수 https://www.acmicpc.net/problem/1065 나의 답def check(i): if (len(str(i)) N을 입력받으면 1~N까지 수에 등차수열인 수가 몇 개 있는 지 카운트하면 된다. 등차수열을 확인하고자 길이가 2 미만이면 등차수열이라고 판단했고,길이가 3이상이면 첫번째 수와 두번째 수의 차이를 알아내서  그 다음 수 사이의 diff값이랑 동일한 지 확인했다.  다른 사람 답n = int(input())hansu = 0 for i in range(1, n+1):    if i = 100:        temp1 = int(str(i)[0]) - int(str(i)[1])        temp2 = int(str(i)[1]) - int(str(i)[2])        if .. 2024. 5. 13.
[Python] 백준 - 블랙잭 https://www.acmicpc.net/problem/2798from itertools import combinationsN,M = list(map(int,input().split()))arr = list(map(int,input().split()))arr.sort()min = 300000for i in combinations(arr,3): n = M - sum(list(i)) if (n>=0 and n  중복을 허용하지 않는 3개의 조합으로 만들 수 있는 경우의 리스트 중,모든 3개의 조합을 토대로 합을 구한 후, 그 합 중에서 제일 차이가 덜 나는 합 값을 출력한다. 다른 사람 답import sysn, m = map(int, sys.stdin.readline().split())r.. 2024. 5. 13.