티스토리 뷰

반응형

https://www.acmicpc.net/problem/10809

 

10809번: 알파벳 찾기

각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출

www.acmicpc.net


⊙ 문제

⊙ 입력

⊙ 출력

⊙ 예제 입출력

⊙ 알고리즘 분류

  • 구현
  • 문자열

 


 

⊙ 문제 접근 과정

 

리스트를 알파벳 개수만큼 -1로 초기화해줬다.

 

그리고 먼저 -1인지 아닌지 검사하고 -1이면 위치 체킹!-1이 아니라면 첫 번째로 나타난 알파벳이 아니니 패스!

 

마지막엔 리스트 출력!


 

⊙ 문제 풀이

 

alpha = input() #문자 입력

alphaCount = [-1]*26 #-1로 배열 초기화

for i in range(len(alpha)):
    if alphaCount[ord(alpha[i])-97] !=-1: #첫 번째로 등장한 단어 위치가 아니면 jump
        continue
    else:
        alphaCount[ord(alpha[i])-97]=i #첫 번째 등장일 시 check

print(*alphaCount) #배열 전체 출력

⊙ 결과

 


⊙ 마무리

 

 

NONE

 

 

좋아요는 로그인하지 않아도 누를 수 있습니다!

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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
글 보관함