Coding Test/백준(Python)

[백준/Python] 15873번(수학,조건분기)_공백 없는 A+B

syunze 2023. 2. 6. 15:59

📌문제 유형

수학, 사칙연산, 많은 조건 분기(브론즈IV)

 

📌문제

 

15873번: 공백 없는 A+B

자연수 A, B (0 < A, B ≤ 10)가 첫 번째 줄에 주어진다. 단, 두 수의 사이에는 공백이 주어지지 않는다. 두 수의 앞에 불필요한 0이 붙는 경우는 없다.

www.acmicpc.net

 

📌나의 문제풀이

- 문자열 함수 사용

  • 문자열.replace(바꾸기 전, 바꾼 후)
  • 꼭 변수에 넣어주기
n = input()

if len(n) == 2:
    li = list(map(int,n))
    print(sum(li))
elif len(n) == 3:
    n = n.replace('10','')
    print(10+int(n))
else:
    print(20)

 

📌다른 사람의 문제풀이

- 리스트 인덱스 사용

 

[Python] 백준 15873 (공백 없는 A+B)

*문제에 대한 내 생각 문제자체는 어렵지 않았다. A와 B를 구분해서 더해주기만 하면 되는 문제였다. 중점은 A 혹은 B가 10인 경우였다. (둘 다 10이면 매우 간단) *문제 풀이 -아이디어 위에서 언급

stultus.tistory.com

n = input()

if len(n) == 2:		#둘 다 10이 아님
    print(sum(map(int, [n[0], n[1]])))
elif len(n) == 4:	#둘 다 10
    print(20)
else:			#둘 중 하나가 10
    if int(n[-1]) == 0:		#문자열의 맨 마지막이 0, 즉 B가 10이다
        print(int(n[0]) + 10)
    else:			#중간이 0, 즉 A가 10이다
        print(int(n[-1]) + 10)

 

728x90