프로그래머스 lv0 연속된 수의 합 문제.. 공식을 알아차리기 어려웠다..
사실 공식만 알면 쉬운데.. 공식을 알아차리기가 어려워서
찾아보고도 골머리를 앓았다...😪
그래도 결국은 내 공식으로
만들어냈다! 뿌듯해
다른 분들의 코드를 보니 홀수 짝수 나누는게 아닌 공식을 찾아내는 분이 있었고,
나처럼 구분하는 사람이 있었다.
나는 처음부터 구분해서 해결하고 싶어서 노트를 피고 공식을 구했다..
더 쉽게 접근할 수 있으면 좋으련만..
def solution(num, total):
answer = []
average = total // num
if num%2 == 0:
i = average - (num-1)//2
for j in range (i, i+num):
answer.append(j)
else:
i = average - (num//2)
for j in range (i, i+num):
answer.append(j)
return(answer)
구해보니
홀수는 average - (num-1)//2 였고
짝수는 average - (num//2) 였다.
여기서 무조건 정수가 나와야 하므로 /를 쓰면 오류가 뜬다 주의..!
처음에는 int형식으로 바꾸려다가 이게 더 간단해서 이렇게 갔다.
휴... 공식 눈치 채느라 좀 해맸다..ㅜ! 이래서 코테 할때 백지 주나../😂