두 번째 뇌

[ Python ] BOJ 단계별 풀어보기 - 문자열 본문

개발자 지식/Algorithm

[ Python ] BOJ 단계별 풀어보기 - 문자열

현파랑 2021. 7. 31. 14:00

11654번 문제 아스키 코드 접근법

 

11654번: 아스키 코드

알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오.

www.acmicpc.net

ord() 함수를 사용하면 해당 문자의 아스키코드를 가져올 수 있고, chr() 함수를 사용하면 해당 아스키코드를 문자로 변경할 수 있습니다.

 

11720번 문제 숫자의 합 접근법

 

11720번: 숫자의 합

첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

www.acmicpc.net

문자열은 배열 기능을 지원하므로 loop를 돌면서 원소를 int()로 정수형 치환 후 누적합을 반환합니다.

 

10809번 문제 알파벳 찾기 접근법

 

10809번: 알파벳 찾기

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

www.acmicpc.net

전체 알파벳을 loop 돌면서 계산한다. string 라이브러리와 find() 함수를 이용하여 해결합니다.

 

2675번 문제 문자열 반복 접근법

 

2675번: 문자열 반복

문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다

www.acmicpc.net

파이썬의 문자열은 곱연산과 덧셈연산이 가능합니다.

 

1157번 문제 단어 공부 접근법

 

1157번: 단어 공부

알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.

www.acmicpc.net

아스키코드 변환과 배열을 활용해봅니다.

 

1152번 문제 단어의 개수 접근법

 

1152번: 단어의 개수

첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한

www.acmicpc.net

단어라는 것은 공백으로 구분된 문자열입니다.

 

2908번 문제 상수 접근법

 

2908번: 상수

상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두

www.acmicpc.net

문자열 뒤집기. reversed와 삼항 연산식을 사용해봅니다.

 

5622번 문제 다이얼 접근법

 

5622번: 다이얼

첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다.

www.acmicpc.net

아스키코드로 변환한 수를 DP로 풀어봅니다. 단, 주어진 조건을 잘 확인해야 하며 다중 if문을 활용하지 않는 방향으로 구현합니다.

 

2941번 문제 크로아티아 알파벳 접근법

 

2941번: 크로아티아 알파벳

예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z=

www.acmicpc.net

문자열을 치환합니다.

 

1316번 문제 그룹 단어 체커 접근법

 

1316번: 그룹 단어 체커

그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때

www.acmicpc.net

검사할 배열을 만들어두고 주어진 단어를 순회하며 글자가 배열에 있는지 확인합니다.
Comments