파이썬 알고리즘 152번 | [백준 17299번] 오등큰수 - 진행 중~

Yunny.Log ·2022년 5월 19일
0

Algorithm

목록 보기
155/318
post-thumbnail

152. 오등큰수

1) 어떤 전략(알고리즘)으로 해결?

2) 코딩 설명

<내 풀이>



<내 틀렸던 풀이, 문제점>

import sys
n=int(sys.stdin.readline().strip())
inp=list(map(str,sys.stdin.readline().strip().split()))
appear=[-1]*1000000 #등장횟수
res=['-1' for _ in range(n)] #appear내 순서보다 크고 가장 왼쪽에 있는 수

for i in range(n) :
    if (appear[int(inp[i])])==-1 : 
        appear[int(inp[i])]=inp.count(inp[i])
    
#print(appear)

for i in range(n) :
    for j in range(i+1,n) : #이거 없애야하는데,,
        if appear[int(inp[i])] < appear[int(inp[j])]:
            res[i] = str(inp[j])
            break

print(' '.join(res))
  • 시간초과 이중 for문

<반성 점>

<배운 점>

  • join, count 는 str에서만 적용된다.
  • 카운터 라이브러리

0개의 댓글