barcode

백준 27866번 풀이

BOJ/[BOJ] Python

문제

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

 

27866번: 문자와 문자열

첫째 줄에 영어 소문자와 대문자로만 이루어진 단어 $S$가 주어진다. 단어의 길이는 최대 $1\,000$이다. 둘째 줄에 정수 $i$가 주어진다. ($1 \le i \le \left|S\right|$)

www.acmicpc.net

단어의 n번째 글자 출력하기

 

풀이

이것도 오랜만에 푸는 고인물한테는 되게 쉬운 문제인데, 한가지 전제하고 갈 게 있다. 컴퓨터는 0부터 센다.

 

import sys 
S = sys.stdin.readline().rstrip()
i = int(sys.stdin.readline())

입력도 두줄로 받으니 월매나 편함? 맵 안써도 되고 좋잖아요.

 

print(S[i])

심지어 단어 S의 i번째 글자만 출력하면 되네? 이거 내면 되죠? 하고 내면 어떻게 된다?

 

예 틀려요. 위에도 썼지만 컴퓨터는 0부터 세기때문에 approximately에서 5번째꺼(o) 뽑을거면 4로 인덱싱해야 합니다.

 

import sys 
S = sys.stdin.readline().rstrip()
i = int(sys.stdin.readline())

print(S[i-1])

그니까 인덱싱을 i-1로 하십쇼.

'BOJ > [BOJ] Python' 카테고리의 다른 글

백준 9086번 풀이  (0) 2023.05.30
백준 2743번 풀이  (0) 2023.05.30
백준 10811번 풀이  (0) 2023.05.28
백준 10813번 풀이  (0) 2023.05.28
백준 10810번 풀이  (0) 2023.05.28