CodingTest

SWEA - 지그재그 숫자(1986)

취업하고싶다! 2023. 10. 16. 21:06
 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

문제

1부터 N까지의 숫자에서 홀수는 더하고 짝수는 뺐을 때 최종 누적된 값을 구해보자.

[예제 풀이]

N이 5일 경우,

1 – 2 + 3 – 4 + 5 = 3

N이 6일 경우,

1 – 2 + 3 – 4 + 5 – 6 = -3

 

 

접근방식

N이 입력되면 1~N까지 숫자 중 홀수는 +, 짝수는 - 처리를 하고 전부 더한 값을 출력하는 문제

1~N까지의 숫자를 arr라는 배열에 저장

arr를 돌면서 2로 나눴을 때 나머지가 0이면(짝수), ans_arr에 (해당 값-2*해당 값) 수식을 통해 해당 값에 마이너스를 붙인 값을 지정

나머지가 0이 아니면(홀수) 해당 값을 그대로 ans_arr에 지정

ans_arr의 sum값을 출력

 

코드

T = int(input())
for i in range(1, T+1):
    arr = []
    ans_arr = []
    N = int(input())
    for j in range(1, N+1):
        arr.append(j)
    for k in arr:
        if k % 2 == 0:
            ans_arr.append(k-2*k)
        else:
            ans_arr.append(k)
    print('#'+str(i), sum(ans_arr))

'CodingTest' 카테고리의 다른 글

SWEA - 파리 퇴치(2001)  (1) 2023.10.18
SWEA - View(1206)  (1) 2023.10.16
SWEA - 최빈수 구하기(1204)  (0) 2023.10.16
SWEA - 간단한 소인수분해(1945)  (1) 2023.10.16
SWEA - 백만장자 프로젝트(1859)  (2) 2023.10.13