일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- cyworld
- html
- react
- react native typescript navigation
- GitHub
- 리액트 네이티브 맥
- 싸이월드
- unity stencil buffer
- react native 타입스크립트
- node
- 리액트 네이티브 설치 오류
- stencil buffer
- Expo
- react native mac
- 벡터와 리스트의 차이
- 스탠실 버퍼 시작
- react-native
- node.js
- react native typescript navigate
- react native ios 기기 연결
- C++
- react native accessible
- react native
- c++ using
- react native typescript
- javascript
- CSS
- 스탠실 버퍼 튜토리얼
- 스탠실 버퍼 사용
- c++ 정보은닉
Archives
- Today
- Total
혀니의 이거저거 뿌시기
백준 20291 파일 정리 (파이썬) 문자열 본문
728x90
20291번: 파일 정리
친구로부터 노트북을 중고로 산 스브러스는 노트북을 켜자마자 경악할 수밖에 없었다. 바탕화면에 온갖 파일들이 정리도 안 된 채 가득했기 때문이다. 그리고 화면의 구석에서 친구의 메시지를
www.acmicpc.net
import sys
input = sys.stdin.readline
N = int(input())
lst = {}
for i in range(N):
file = input().strip()
tmp = file[file.find('.') + 1:]
if tmp in lst:
lst[tmp] += 1
else:
lst.setdefault(tmp, 1)
lst2 = sorted(lst.items())
for i in lst2:
print(i[0], i[1])
푸는 덴 어렵지 않았지만 알아야 할 것이 많았던 문제..
1.딕셔너리 사용법 알기
2.개행 제거하는 방법 알기
=> str.strip() 이런 식으로
3.마지막 인덱스 참고하는 방법 알기
=> str.find('.') : 첫 .이 나온 인덱스 알 수 있음 (+ 자매품 str.rfind('.')뒤부터 인덱스 번호 찾음)
4.딕셔너리에 요소 추가하고 values 증가시키는 방법 알기
=> 처음 인덱스에 요소 추가를 할 때는 lst.setdefault(key, values)
그 뒤부터는 lst[key] += 1이런 식으로 하면 된다.
5.딕셔너리를 키값 기준으로 오름차순 정렬하는 방법 알기
=> lst2 = sorted(lst.items())
이렇게 하면 오름차순으로 정렬 가능하다.
6.리스트 안의 튜플 요소 출력하는 방법 알기
5번처럼 정렬했으면 [(,), (,)] 이런 식으로 되는데 그럴 때는 for문으로 리스트를 돌면서 i[0] i[1]이런 식으로 안의 요소들을 구할 수 있다.
등을 알아야 이 문제를 수월하게 풀 수 있다.
728x90
'알고리즘 공부(C++)' 카테고리의 다른 글
백준 1003 피보나치 함수 (다이나믹 프로그래밍 / 파이썬) (0) | 2022.09.13 |
---|---|
백준 15663 N과 M(9) 백트래킹 파이썬 (2) | 2022.09.11 |
백준 11663 선분 위의 점(파이썬) 이분 탐색 (0) | 2022.09.07 |
백준 19637 IF문 좀 대신 써줘 - 파이썬 (0) | 2022.09.07 |
백준 1343 폴리오미노 (0) | 2022.09.06 |