점점 어려워진다.
문제를 접할수록 아직 내가 문법이 부족하다는것을 많이 느낀다.
[1065] 한수
해결 포인트
한자릿수 두자릿수 모든 숫자는 등차수열이다.
이를 먼저 조건을 건다음 인덱스 0,1 과 2,3을 비교하여 카운트 해보자
답안
import sys
x = int(sys.stdin.readline())
cnt = 0
for i in range(1,x+1):
if i < 100:
cnt += 1
else:
b = list(map(int,str(i)))
if b[1] - b[0] == b[2] - b[1]:
cnt += 1
print(cnt)
1 ~ 입력받은수까지가 문제에서 요구하는 범위이다.
각 요소를 숫자형으로 변경하여 리스트를 만들어 비교하면 된다.
[11654] 아스키 코드
해결 포인트
ord()를 사용하면 쉽게 풀이 가능하다.
답안
print(ord(input()))
[11720] 숫자의 합
해결 포인트
그냥 쉽다....
답안
a = int(input())
b = input()
sum = 0
for i in b:
sum += int(i)
print(sum)
[10809] 알파벳 찾기
해결 포인트
변수 두개
하나는 입력받고
하나는 알파벳을 저장하여 a in b 를 이용하여 찾고 해당 인덱스를 출력하면 된다.
답안
from operator import index
a = input()
b = 'abcdefghijklmnopqrstuvwxyz'
for i in b:
if i not in a:
print(-1,end=" ")
else:
print(a.index(i),end=" ")
[2675] 문자열 반복
해결 포인트
공백으로 구분되어 입력받은뒤 입력받은 수 만큼 인덱스 하나하나 반복하여 출력하면 된다.
답안
a = int(input())
sum = ""
for i in range(a):
b, c = input().split()
for j in range(len(c)):
sum += c[j]*int(b)
print(sum)
sum = ""
[1152] 단어의 개수
해결 포인트
공백으로 단어를 입력받고 len()을 이용하면 끝이다.
답안
a = input().split()
print(len(a))
[2908] 상수
해결 포인트
[::-1] 을 이용하면 문자열을 반대로 구성할 수 있다.
답안
a,b = input().split()
a = a[::-1]
b = b[::-1]
if a<b:
print(b)
else:
print(a)
'코딩 > 백준알고리즘' 카테고리의 다른 글
[파이썬] 9. 기본수학...백준(1712) (0) | 2022.09.10 |
---|---|
[파이썬] 8. 문자열...백준(5622, 2941, 1316, 1157) (0) | 2022.09.09 |
[파이썬] 6. 리스트 + 반복문...백준(15552, 11021, 11022, 2438, 2439, 10871, 10952, 10951, 1110) (0) | 2022.09.07 |
[파이썬] 5. 리스트 + 반복문...백준(4344, 2739, 10950, 8393, 25304) (0) | 2022.09.06 |
[파이썬] 4. 리스트 + 반복문... 백준(10818, 2562, 3052, 1546, 8958) (0) | 2022.09.05 |