백준 1024번: 수열의 합

Y·2023년 11월 4일
0

백준

목록 보기
4/27

백준 1024번: 수열의 합

수학 문제라서 별달리 풀이할 건 없다... 다만 나는 코드를 좀 지저분하게 짜서 다른 분들의 풀이도 참고해보려고 정리차 글을 남긴다.

N,L = map(int,input().split())

for i in range(l,101):
	x = n - i*(i+1)/2
	if x%i==0:
    	x=int(x/i)
        if x>=-1:
        	print(*list(range(x+1,x+i+1)))
            break
else:
	print(-1)

else파트에서 플래그 변수를 쓰기가 귀찮아서 exit()를 썼는데, 아예 else를 걸어주는 방법도 있다는 걸 알게됐다! 그리고 나는 (i-1)*i/2로 식을 잘못 세웠더니 0이 들어가는 경우가 포함이 안돼서 지저분하게 로직이 나왔는데, i*i+1이 맞는 식이다.

profile
개발자, 학생

0개의 댓글