PS/백준 - 파이썬
-
백준 10809번 : 알파벳 찾기 - 문제 풀이 (Python)PS/백준 - 파이썬 2023. 10. 8. 13:46
https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 문제 풀이 input을 받고, 단어의 뒤에서부터 리스트에 순서를 대입하기 시작한다. (앞에서 부터 대입하면, 맨 마지막 숫자의 index가 결과로 나오기 때문이다. ) 이 때 for문 step을 -1로 주는 방식을 택했다. ord와 chr 코드를 통해 a부터 z까지 딕셔너리를 출력하도록 했고, 만약 이제까지 없었던 알파벳이 나오면 에러가 발생하므로, try - except문의 exce..
-
백준 2577번 : 숫자의 개수 - 문제 풀이 (Python)PS/백준 - 파이썬 2023. 10. 8. 13:15
https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 풀이 방식 * 해당 문제에서 1부터 9까지 몇번 쓰였는지 출력하라고 되어있는데, 출력을 보면 0부터이므로 헷갈리지 않도록 한다. input_ 을 1로 두어, 세 개의 숫자가 입력되자마자 곱해지도록 했다. 스트링으로 만들어서 각 자릿수에 접근이 쉽도록 했고, 코드를 줄이기 위해 dict_의 형태를 미리 0부터 9까지의 key를 (수동으로 ㅎㅎ,,ㅋㅋㅋ) 만들어 두었다. (코드로 작성해도 될 것 같다.) 이후 각 자리에 접근하여 각 숫자를 str형태에서 ..
-
백준 2920번 : 음계 - 문제 풀이 (Python)PS/백준 - 파이썬 2023. 10. 7. 23:19
https://www.acmicpc.net/problem/2920 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net 조금 복잡하게 푼 것 같기도 하다. 풀이 방식 state를 None으로 두고, 계속 올라가는 경우 state가 ascending으로 유지된다. 계속 내려가는 경우 descening으로 유지된다. 하지만 state가 다른 값으로 대입되려고 하는 경우, mixed를 출력하고 반복문을 중단한다. for문이 다 돌아가는 경우, 최종 state를 출력한다. 이 때 ..