본문 바로가기
알고리즘 풀이

[algorithm] 백준: 10926 ??!, 18108 불기연도 계산

by 째깍단 2023. 3. 30.

10912: 문자열에 ??! 붙이기

 

문제 분석:

어떤 입력값, 소문자 문자열이 들어오면(input)

이 문자열이 이미 존재한다고 가정하여 + ??!을 붙여 출력.

 

문제에 장황하게 써있지만 지우고 보면 간단하다.

 

 

풀이:

파이썬에서는 +를 사용해 문자열끼리 그냥 붙일 수 있다!

print(input() + "??!")

 

 


 

18108: 불기연도를 서기연도로 계산

 

문제 분석:

서기 연도를 알아보고 싶은 불기 연도 y가 주어진다. (1000 ≤ y ≤ 3000)
> 불기 연도인 y 가 "주어진다." = input()에 저절로 값이 입력될 것이다.

불기연도를 입력받으면 서기연도가 나오는 함수를 만들어야한다.
서기 연도를 x로 가정
 
x + 543 = y
x = y - 543
 

 

과정:

단순히 풀면 

x = y - 543이니까

y에 인풋을 받고 바로 print(x)를 하면 된다.

 

풀이:

y = int(input('불기연도를 입력하세요 :'))

x = y - 543

print(x)

 

+

다 풀고 나서 괜히 바보같은 생각이 든다...

더보기

 함수로 정의해보고싶었다. 자꾸 써봐야 늘지..라는 생각하에 진행

 

전 단계

사용자가 아래 year()함수에 직접 입력해야 작동하는 방식으로 작성되어 백준에서는 틀렸다고 나온다ㅠㅠ

로직 자체는 틀리지 않았지만 입력값이 자동으로 주어지는 상황에서 적절하지 않았다.

x = []

def year(y):
    y = int(input('불기 연도를 입력하세요 : '))
    x.append(y - 543)
    return x

year(#여기에 연도 입력)
print(x[0])

 

그래서  input을 함수 바깥으로 빼고,

함수에 바로 입력값을 받을 수 있도록 수정하였다.

x = []

def year(y):
    x.append(y - 543)
    return x

year(int(input('불기 연도를 입력하세요 : ')))
print(x[0])

시간제한때문에 성공은 못하는 듯...ㅋㅋ

 

 


느낀점: 

문제를 푸는데 집중하지 말고

문제를 '풀이'하는데 집중하자!

 

삽질이라도 자주하면 빨라지고 얻어가는 부분이 있는 것 같다. 화이팅

 

*** 어렵게 생각하지 말자! 복잡하게 생각하면 진짜 어려워지니까