BOJ
백준 파이썬 2839 설탕 배달
Coding_SJ
2020. 3. 21. 03:38
내 풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
import sys
a = int(input())
b = 0
if a in [4,7]:
print(-1)
sys.exit(0)
if a in [3,6,9,12]:
print(a//3)
sys.exit(0)
if a == 11:
print(3)
sys.exit(0)
if a == 14:
print(4)
sys.exit(0)
while 1:
b+=1
if 5*b>a:
b = b-1
break
if (a-5*b)%3 == 0:
c = (a-5*b)//3
print(b+c)
elif (a-5*b)%3 != 0:
while 1:
b = b-1
if (a-5*b)%3 == 0:
c = (a-5*b)//3
print(b+c)
break
|
cs |
15부터는 문제없이 다 될걸 예상하고
문제되는게 3~14라는게 훤히 보여서....
그냥 3~14인 케이스만 손으로 일일이 노가다하면서 걸러줬다.
사실상 이렇게하면 머리쓴게아니라 노가다한거라 실력에 도움은 안될거라는걸 알면서도..
정답률이 낮은문항이라 꼭 맞추고싶었다(...) ㅠㅠ
sys.exit(0)을 처음으로 쓴 문제.
고인물식 숏코딩
1
|
n=int(input());print(-1if n in [1,2,4,7] else n//5+n%5-n%5//3*2)
|
cs |
... 한줄풀이가 된다는게 정말 놀랍다
일단 그냥 이분도 1,2,4,7은 거르고 시작하셨는데
이걸보니까 진짜 4,7만 걸러주면 된다는 생각이 드네.. 왜 3~14했냐..