1316번: 그룹 단어 체커
그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때
www.acmicpc.net
words = []
num = int(input())
for i in range(num):
words.append(input())
answer = 0
for word in words:
count = 0
temp = ""
for w in word:
if temp != w:
count += 1
temp = w
if len(set(word)) == count:
answer += 1
print(answer)
set을 이용한 풀이
2941번: 크로아티아 알파벳
예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z=
www.acmicpc.net
word = input()
special = ["c=", "c-", "dz=", "d-", "lj", "nj", "s=", "z="]
for s in special:
word = word.replace(s, "0")
print(len(word))
.replace(old, new)
1427번: 소트인사이드
첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.
www.acmicpc.net
word = input()
print("".join(sorted(word, reverse=True)))
숫자도 문자열 처럼 정렬 가능
1181번: 단어 정렬
첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다.
www.acmicpc.net
n = int(input())
words = []
for i in range(n):
words.append(input())
for w in sorted(set(words), key=lambda x: (len(x), x)):
print(w)
정렬의 기준이 여러 개 일 때
key=lambda x: (기준1, 기준2, ...)
'Coding Test > 문제 풀이' 카테고리의 다른 글
[문제 풀이] 백준 4949 (0) | 2022.03.22 |
---|---|
[문제 풀이] 백준 12865 (0) | 2022.03.21 |
[문제 풀이] k진수에서 소수 개수 구하기 (Python, Swift) (0) | 2022.03.16 |
[문제 풀이] 캐시 (Python, Swift) (0) | 2022.03.15 |
[문제 풀이] 정수 삼각형 (0) | 2022.03.14 |