[백준] 5622번 - 다이얼 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 상근이의 할머니는 아래 그림과 같이 오래된 다이얼 전화기를 사용한다. 전화를 걸고 싶은 번호가 있다면, 숫자를 하나를 누른 다음에 금속 핀이 있는 곳 까지 시계방향으로 돌려야 한다. 숫자를 하나 누르면 다이얼이 처음 위치로 돌아가고, 다음 숫자를 누르려면 다이얼을 처음 위치에서 다시 돌려야 한다. 숫자 1을 걸려면 총 2초가 필요하다. 1보다 큰 수를 거는데 걸리는 시간은 이보다 더 걸리며, 한 칸 옆에 있는 숫자를 걸기 위해선 1초씩 더 걸린다. 할머니가 외운 단어가 주어졌을 때, 이 전화를 걸기 위해서 필요한 최소 시간을 구하는 프로그램을 작성하시오. 설명 덧붙이자면, 저기 전화기 숫자 밑에 문자가 있다. 입력받은 문자랑 숫자를 매칭 시켜서 전화걸건데, 다 합해서 총 몇 번 돌려야하는지 ..
[백준] 2908번 - 상수 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다. 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net 🎨 풀이 💡 성공 코드 import sys s = list(map(str, sys.stdin.readline().split..
[백준] 1152번 - 단어의 개수 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. https://www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 🎨 풀이 💡 성공 코드 import sys s = list(map(str, sys.stdin.readline().split())) print(len(s)) > 핵심 : 단어는 공백 한..
[백준] 2675번 - 문자열 반복 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다. QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: 이다. https://www.acmicpc.net/problem/2675 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다..
[백준] 1157번 - 단어 공부 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 🎨 풀이 💡 성공 코드 s = str(input()) s = s.upper() alphabet = ['A','B','C','D','E','F','G','H','I','J','K','L','M..
[백준] 10809번 - 알파벳 찾기 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 🎨 풀이 💡 성공 코드 s =str(input()) alpha = ['a',"b","c","d","e","f","g","h","i","j","k","l","m","n","o","p..
[백준] 11720번 - 숫자의 합 (파이썬)
·
알고리즘 공부/백준
📝 문제 > N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 🎨 풀이 💡 성공 코드 n = int(input()) arr = str(input()) result = 0 for i in range(len(arr)): result += int(arr[i]) print(result) > 1. n을 입력받는다. 2. 문자를 arr에 입력받는다. (이름이 arr인 이유는 list 형태로 저장하려고 시도했다가.. 까먹고 안바꿨다! ^_^) 3. f..
[백준] 11654번 - 아스키 코드 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/11654 11654번: 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. www.acmicpc.net 🎨 풀이 💡 성공 코드 n = str(input()) print(ord(n)) > n을 입력받은 후 아스키코드 함수인 ord()를 사용해서 출력해주면 된다. ​끝~ ⭐ 느낀점 > 한줄로 끝나는 설명은 처음인 것 같기도 하고,. ㅎㅎ. 이전에 한수라는 좀 큰 산을 넘어서 그런지~ 정말 숨쉬는 것만큼이나 쉬웠다. 하하~ 하지만 여기..