문자열 77

백준(Python) 2902번 KMP는 왜 KMP일까? 풀이

Python으로 구현한 2902번 KMP는 왜 KMP일까? 문제 풀이입니다. https://www.acmicpc.net/problem/2902 2902번: KMP는 왜 KMP일까? 입력은 한 줄로 이루어져 있고, 최대 100글자의 영어 알파벳 대문자, 소문자, 그리고 하이픈 ('-', 아스키코드 45)로만 이루어져 있다. 첫 번째 글자는 항상 대문자이다. 그리고, 하이픈 뒤에는 반드 www.acmicpc.net data = list(map(str, input().split("-"))) for i in range(len(data)) : for j in range(1) : print(data[i][j], end='') 입력받는 문자열을 하이픈('-')으로 구분하여 data리스트에 담고, 이중 for문을 통해..

백준(Python) 1032번 명령 프롬프트 풀이

Python으로 구현한 1032번 명령 프롬프트 문제 풀이입니다. https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net n = int(input()) first = list(input()) first_len = len(first) for i in range(n - 1) : other = list(input()) for j in range(first_len) : if first[j] != other[j] : first[j] = '?' print(..

백준(Python) 1100번 하얀 칸 풀이

Python으로 구현한 1100번 하얀 칸 문제 풀이입니다. https://www.acmicpc.net/problem/1100 1100번: 하얀 칸 체스판은 8×8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램 www.acmicpc.net data = [] for _ in range(8) : data.append(list(map(str, list(input())))) result = 0 for i in range(8) : for j in range(8) : if (i+j) % 2 == 0 : if data[i][j] == 'F' : result += 1 print(res..

백준(Python) 11816번 8진수, 10진수, 16진수 풀이

Python으로 구현한 11816번 8진수, 10진수, 16진수 문제 풀이입니다. https://www.acmicpc.net/problem/11816 11816번: 8진수, 10진수, 16진수 첫째 줄에 X가 주어진다. X는 10진수로 바꿨을 때, 1,000,000보다 작거나 같은 자연수이다. 16진수인 경우 알파벳은 소문자로만 이루어져 있다. www.acmicpc.net x = input() if x[0] == '0' : if x[1] == 'x' : print(int(x, 16)) else : print(int(x, 8)) else : print(x) 입력받은 x의 첫번째 요소가 0이고 두번째 요소가 x일 경우 16진수이기 때문에 16진수 값을 10진수로 바꾸어 출력하고 첫번째 요소가 0이고 두번째 ..

백준(Python) 10808번 알파벳 개수 풀이

Python으로 구현한 10808번 알파벳 개수 문제 풀이입니다. https://www.acmicpc.net/problem/10808 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net count = [0] * 27 s = input() for i in range(len(s)) : count[ord(s[i]) - 97] += 1 for i in range(26) : print(count[i], end=' ') 입력받은 문자열은 알파벳 소문자로만 이루어져 있기 때문에 문제를 쉽게 해결할 수 있다. 입력된 문자열에서 문자를 하나씩 확인하여 해당 값을 아스키 코드 값으로 변환하고 97을 뺀 값을 count 인덱스로..

백준(Python) 10822번 더하기 풀이

Python으로 구현한 10822번 더하기 문제 풀이입니다. https://www.acmicpc.net/problem/10822 10822번: 더하기 첫째 줄에 문자열 S가 주어진다. S의 길이는 최대 100이다. 포함되어있는 정수는 1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net s = list(map(int, input().split(","))) print(sum(s)) 콤마로 구분하여 값을 리스트 형태로 입력받고 리스트 내에 담겨있는 수들의 합을 출력한다.

백준(Python) 11719번 그대로 출력하기 2 풀이

Python으로 구현한 11719번 그대로 출력하기 2 문제 풀이입니다. https://www.acmicpc.net/problem/11719 11719번: 그대로 출력하기 2 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이 www.acmicpc.net while True : try : print(input()) except EOFError : break try ~ except 를 활용하여 입력 받은 값 그대로 출력한다.

백준(Python) 11721번 열 개씩 끊어 출력하기 풀이

Python으로 구현한 11721번 열 개씩 끊어 출력하기 문제 풀이입니다. https://www.acmicpc.net/problem/11721 11721번: 열 개씩 끊어 출력하기 첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다. www.acmicpc.net value = input() count = 0 for i in range(len(value)) : print(value[i], end='') count += 1 if count == 10 : print() count = 0 입력받은 문자열을 하나씩 출력하면서 count 값을 1씩 증가시킨다. 조건문을 통해 count의 값이 10이라면 줄바꿈 처리를 하..

백준(Python) 1225번 이상한 곱셈 풀이

Python으로 구현한 1225번 이상한 곱셈 문제 풀이입니다. https://www.acmicpc.net/problem/1225 1225번: 이상한 곱셈 첫째 줄에 A와 B가 주어진다. 주어지는 두 수는 모두 10,000자리를 넘는 음이 아닌 정수이다. 수가 0인 경우에는 0만 주어지며, 그 외의 경우 수는 0으로 시작하지 않는다. www.acmicpc.net a, b = map(str, input().split()) result = 0 for i in range(len(a)) : for j in range(len(b)) : result += int(a[i]) * int(b[j]) print(result) a와 b를 문자열로 입력받아 이중 for문을 통해 가능한 모든 조합의 곱셈을 수행한 후 resul..