728x90
배열의 위치와 관련하여 연습할때 좋은 문제인듯 하다.
이번 문제의 주요 핵심은
12번 줄의
Ai = [int(num) for num in input()] - 이 부분이다. 이녀석은 배열 하나하나에 값을 넣어주는 친구이다.
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
|
# 문제
# 가장 많이 적힌 카드 숫자와 몇장 인지 출력
# 만약 카드 장수가 같을때는 큰 숫자를 출력
#
# 입력
# 테스트케이스
# 장수
# 카드값
T = int(input()) # 1~50
for tc in range(1,T+1):
N = int(input()) # 5~100
Ai = [int(num) for num in input()] # a[0] = 4,a[1]= 9, a[2]=6 ... a[4]9 배열하나에 값넣기.
cards =[0]*100 # 0
cnt =0
for i in range(N): # 중복되는 수 카운트
cards[Ai[i]] += 1
if cards[Ai[i]] > cnt: # 카운트가 중복되는 수 카운트보다 클경우
cnt = cards[Ai[i]] # 카운터에 중복 카운트 수를 넣어주고
mcnt = Ai[i] # 그 수를 제일 큰수로 저장
if cards[Ai[i]] == cnt: # 카운드 값이 두수가 같다면?
if Ai[i] > mcnt: # 두개의 값을 비교하
mcnt = Ai[i] # 다시 큰수가 제일 큰수로 재저장
print("#{} {} {}".format(tc , mcnt, cnt))
|
cs |
728x90
'알고리즘 > SWAE' 카테고리의 다른 글
[SWAE-Python] 6485. 삼성시의 버스노선, 1959. 두개의 숫자열 (2) | 2021.02.15 |
---|---|
[SWAE] Python 4828 - minmax (버블정렬) (0) | 2021.02.10 |
[SWAE] Python 4828 - minmax 값구하깅 (0) | 2021.02.09 |
[SW Expert] (D3) 원재의 메모리 복구하기 (0) | 2021.02.05 |
[SW Expert] (D2) JAVA - 숫자 달팽이 그리기 (0) | 2021.02.02 |