백준파이썬 30

#백준 1764, 파이썬 / set 집합 자료형 교집합, 합집합, 차집합

n, m = map(int, input().split()) # 딕셔너리에 듣도 못한 사람의 이름, 수 입력받기 names = {} for i in range(n): name = input() names[name] = 1 ans = [] for j in range(m): name = input() if names.get(name) == None: # 딕셔너리에 있는 이름일 경우 듣보잡 continue else: ans.append(name) # 결과 출력 print(len(ans)) for answer in ans: print(answer) 왜 틀렸다고 나오는지 모르겠다ㅠ 혹시나 이유를 아시는 분은 댓글 달아주시면 좋을 것 같습니다ㅠ 다른 분들의 풀이를 검색해봤더니 set 집합 자료형을 통해 교집합을 구하..

Algorithm/Baekjoon 2022.10.20

#백준 10816, 파이썬 / 딕셔너리 이용

# 백준 집합과 맵 : 10816번 - 숫자 카드 2 # 딕셔너리 이용 # 가지고 있는 숫자 카드 개수 n n = int(input()) # n개의 숫자 카드에 적혀있는 정수 cards 리스트에 넣기 cards = list(map(int, input().split(' '))) # 가지고 있는 숫자 카드와 비교할 개수 m m = int(input()) # 가지고 있는 숫자 카드인지 구해야 할 m개의 정수 guess = list(map(int, input().split(' '))) # 몇 개 가지고 있는 비교하기 ans = {} for card in cards: if card in ans: ans[card] += 1 else: ans[card] = 1 # 결과 출력하기 for i in guess: if an..

Algorithm/Baekjoon 2022.10.12

#백준 1620, 파이썬 / sys.stdin.readline

- 시간 초과난 코드 # 백준 집합과 맵 : 1620번 - 나는야 포켓몬 마스터 이다솜 n, m = map(int, input().split()) # n개의 포켓몬 개수, m개의 맞춰야하는 문제 개수 # n개의 포켓몬 딕셔너리에 {번호, 포켓몬 이름}, {포켓몬 이름, 번호}입력받기 s = {} for i in range(1, n + 1): pokemon = input() s[i] = pokemon s[pokemon] = i for i in range(m): quiz = input() if quiz.isdigit() : # 문제가 번호면 해당 포켓몬 이름 출력 print(s[int(quiz)]) else : # 문제가 알파벳이면 해당하는 번호 출력 print(s[quiz]) 사실 다른분의 코드를 참고해서..

Algorithm/Baekjoon 2022.10.06

#백준 14425, 파이썬

# 백준 집합과 맵 : 14425번 - 문자열 집합 n, m = map(int, input().split(' ')) s = [] # n개의 문자열을 담을 리스트 for i in range(n): # n개의 문자열 입력받기 str = input() s.append(str) # m개의 검사해야하는 문자열 입력받으면서 n개의 문자열 몇 개 포함되어있는지 검사 cnt = 0 # m개의 문자열 중에 집합 S에 포함되어 있는 개수 for i in range(m): str = input() if str in s: # 집합 s에 m개의 문자열이 포함된 경우 cnt += 1 print(cnt)

Algorithm/Baekjoon 2022.10.06

#백준 11659, 파이썬, PyPy3와 Python3 차이점

-시간초과 코드 # 백준 누적 합 : 11659번 - 구간 합 구하기 4 n, m = map(int, input().split()) # 수의 개수 n, 합을 구해야 하는 횟수 m 입력받기 num = list(map(int, input().split())) # n개의 수 입력받기 for _ in range(m): i, j = map(int, input().split()) # 구간 i, j 입력받기 sum = 0 for k in range(i,j+1): sum += num[k-1] print(sum) 처음에 이렇게 제출했는데 시간초과 나왔다. 이제는 답만 나오게 생각없이 풀지말고 좀 더 효율적으로 생각을 한 번 더 해야겠다. ​ ​ -다시 수정한 코드 > Python3 시간초과 / PyPy3은 통과 # 백준..

Algorithm/Baekjoon 2022.09.27

#백준 2559, 파이썬, 리스트 슬라이싱 :

-시간초과 난 코드 # 백준 누적 합 : 2559번 - 수열 n, k = map(int, input().split()) # 전체 날짜 수 n, 연속적인 날짜의 수 k temp = list(map(int, input().split())) # 측정한 온도 temp_sum = [0] * n for i in range(n-k+1): for j in range(i, i+k): temp_sum[i] += temp[j] print(max(temp_sum)) -수정한 코드 # 백준 누적 합 : 2559번 - 수열 n, k = map(int, input().split()) # 전체 날짜 수 n, 연속적인 날짜의 수 k temp = list(map(int, input().split())) # 측정한 온도 temp_sum ..

Algorithm/Baekjoon 2022.09.26

#백준 2750, 파이썬, 리스트 정렬하기, sort(), sorted() 함수

# 백준 정렬 : 2750번 - 수 정렬하기 n = int(input()) # 입력받을 개수 입력받기 num_list = [] for i in range(n): num_list.append(int(input())) num_list.sort() # 오름차순 정렬 for i in range(n): print(num_list[i]) - sort 함수 리스트 객체를 정렬해주는 함수이다. list.sort() 는 list 자체를 정렬한다. * 숫자는 기본적으로 오름차순 정렬 (음수 - 0 - 양수 순) list.sort(reverse=True) # 내림차순으로 정렬하는 법 * 영어는 a,b,c,d... 알파벳 순으로 정렬 (대문자 - 소문자 순) ​ - sorted 함수 sorted는 새롭게 정렬된 리스트를 반환..

Algorithm/Baekjoon 2022.09.04

#백준 1436, 파이썬, in 연산자

# 백준 브루트 포스 : 1436번 - 영화감독 숌 n = int(input()) # n번째 영화 입력받기 i=0 cnt=0 while True: if '666' in str(i): # 666이 포함된 경우 cnt+=1 if cnt == n: # n번째 영화 제목 출력 print(i) break i+=1 in 연산자를 이용해서 6이 적어도 3개이상 연속으로 포함되어 있는지 확인한다. ​ - 파이썬 in 연산자 문자열에서 특정 문자열이 포함되어 있는지 확인 가능! 값이 포함된 경우 True 리턴, 아닌 경우 False 리턴한다. (not in 연산자는 반대)

Algorithm/Baekjoon 2022.08.26

#백준 7586, 파이썬, 리스트

# 백준 브루트 포스 : 7568번 - 덩치 n = int(input()) # 전체 사람 수 입력받기 weight_height = [] for _ in range(n): # 몸무게, 키 입력받기 weight, height = map(int, input().split(' ')) weight_height.append([weight, height]) # 자기보다 덩치 큰 사람 수 구하기 rank_list = [] for i in range(n): rank=0 w = weight_height[i][0] h = weight_height[i][1] for j in range(n): if w < weight_height[j][0] and h < weight_height[j][1]: rank+=1 rank_list.a..

Algorithm/Baekjoon 2022.08.26

#백준 2231, 파이썬, list, map, 깃허브 에러

# 백준 브루트 포스 : 2798번 - 분해합 n = int(input()) for i in range(n+1): num = list(map(int, str(i))) res = i + sum(num) if res == n: # 생성자 있는 경우 print(i) break if i == n: # 생성자 없는 경우 0 출력 print(0) 최근에 모각코하면서 깃허브 리포지토리 이름을 바꾼게 문제였는지... (난 아직 깃허브 넘 어렵다...ㅜ git push 하려니까 자꾸 에러가 떴다... 이름도 다시 바꿔보고 remote add 다시 해봐도 안되어서ㅋㅋㅋㅋ error: failed to push some refs to 'https://github.com/sua01/Baekjoon-Mogakko.git' hi..

Algorithm/Baekjoon 2022.07.21
728x90