반응형 Python51 [백준] 1236번 : 성 지키기 유형 : 탐색 [예제] 5 8 ....XXXX ........ XX.X.XX. ........ ........ [출력] 3 1. 내 풀이 우선 예시를 통해 문제를 이해해보자. (아래그림 참고) import sys N, M = map(int,sys.stdin.readline().split()) _list = [] result1 = 0 for i in range(N): tmp = sys.stdin.readline().strip() _list.append(tmp) if 'X' not in tmp: result1 += 1 result2 = 0 for i in range(M): cnt2 = 0 for j in range(N): if _list[j][i] == 'X': break else: cnt2 += 1 if .. 2022. 1. 4. [백준] 1668번 : 트로피 진열 유형 : 탐색 [예제] 7 1 4 2 5 3 7 1 [출력] 4 2 1. 내 풀이 예제를 우선 살펴보면, 위의 그림처럼 중간중간 변하는 max를 기준으로 보이는 개수가 달라지는 것을 알 수 있다. 그래서 max값을 기준으로 값을 비교하는 식으로 코드를 짜면 되겠다고 생각했다. import sys N = int(sys.stdin.readline()) _list = [] for _ in range(N): num = int(sys.stdin.readline()) _list.append(num) def count_trophy(_list,N): cnt = 1 _max = _list[0] for i in range(N): if _max < _list[i]: cnt += 1 _max = _list[i] return .. 2022. 1. 3. [백준] 1302번 : 베스트셀러 ☆ 유형 : 탐색 [예제] 5 top top top top kimtop [출력] top 1. 내 풀이 import sys N = int(sys.stdin.readline()) _list = [] for _ in range(N): book = sys.stdin.readline().strip() _list.append(book) _list = sorted(_list) _set = set(_list) _list2 = list(_set) _list2 = sorted(_list2) max = 0 max_book = 0 for i in range(len(_list2)): cnt = _list.count(_list2[i]) if cnt > max: max = cnt max_book = _list2[i] print(max.. 2022. 1. 3. [백준] 1568번 : 새 유형 : 탐색 [예제] 14 [출력] 1 1. 내 풀이 N = int(input()) cnt = 0 k = 1 while True: if N n: k = 1 n-=k k += 1 .. 2022. 1. 3. [백준] 1543번 : 문서 검색 유형 : 정렬 [예제1] ababababa aba [출력1] 2 [예제2] a a a a a a a [출력2] 2 1. 내 풀이 text = input() word = input() print(text.count(word)) ▷ count()로 전체 문서 중 원하는 단어가 몇 개인지 셀 수 있었다. 2. 다른 풀이 출처 : 패스트캠퍼스 - 알고리즘 / 기술면접 완전 정복 올인원 패키지 Online ** 핵심 아이디어 1. 문서의 길이는 최대 2500이고 단어의 길이는 최대 50이다. 2. 단순히 모든 경우의 수를 계산하여 문제를 해결할 수 있다. 3. 시간 복잡도 O(NM)의 알고리즘으로 해결할 수 있다. - 문서, 단어 길이가 크지 않기 때문에 모든 경우를 파악해도 충분하다. ex. 문서 : ababa.. 2022. 1. 3. [백준] 11004번 : K번째 수 유형 : 정렬 [예제] 5 2 4 1 2 3 5 [출력] 2 1. 내 풀이 import sys N, K = map(int, sys.stdin.readline().split()) _list = list(map(int, sys.stdin.readline().split())) print(sorted(_list)[K-1]) ▷ sys.stdin.readline()을 이용해 소요되는 시간을 줄였다. ▷ sys.stdin.readline()에 대해 참고한 블로그 : [Python 문법] 파이썬 입력 받기(sys.stdin.readline) ▷ 아래 그림을 보면 PyPy3과 Python3에서 실행한 시간을 알 수 있다. 2. 다른 풀이 출처 : 패스트캠퍼스 - 알고리즘 / 기술면접 완전 정복 올인원 패키지 Onlin.. 2022. 1. 3. 이전 1 2 3 4 5 6 7 ··· 9 다음 반응형