이런 문제인데


정답 해설은 DP로 리스트 선언해서 풀었더라구요.


저는 조금 이상하게 접근했는데, 일단 책에 나온 입력예시 2개는 정답으로 나옵니다. 혹시 Test Case가 변화해도 정답처리되는 코드인지 확인해주실수 있을까요?

제가 이번에 코테 처음 준비하는 졸업생인지라... 완전 기초인거도 몰라서 부탁드리겠습니다. ㅠ



작성 코드 :

n , m = map( int , input().split())

cointype = []

for _ in range(n) :
cointype.append(int(input()))

cointype.sort(reverse = True)

count = 0

for i in cointype:
if m < i:
continue
if m % i == 0:
count += m // i
m = -1
break
else:
count += m // i
m = m % i

if m == -1:
print(count)
else:
print(-1)


이게 논리적으로 정답코드가 맞을까요?