24.12.03 (화)

2024. 12. 3. 10:08·내배캠/TIL

 

 

switch - case문

알고리즘 문제를 풀다보니 Switch문을 사용했는데 평소 쓸 일이 많이 없었어서 생소하게 느껴졌다.

 

 

 

 

 

짝수의 합

1 ~ N 값 중에 짝수의 합을 구하는 문제를 풀었다.

 

우선 N 값이 5이라고 가정하고 자연수의 합을 구하는 공식을 시각적으로 알아보자.

일반적으로 사람 수를 센다고 가정하면 사각형으로 섰을 때, 가로와 세로의 수를 곱하면 편하기 때문에 2배수를 만들어 사각형을 만들어보면 위의 그림과 같다.

즉 5 X (5+1)의 값이 사각형의 값이 되고, 이것을 절반으로 나누면 1 ~ 5 까지의 자연수 합인 15의 값을 구할 수 있게 된다.

최종적으로 N X (N+1) / 2 의 공식을 구할 수 있게 되었다.

 

그럼 여기서 N = 5 까지의 숫자 중 짝수의 합을 구한다고 하면

N을 2로 나누어 짝수의 총 개수는 K = 2가 된다. 그리고 K x (K+1) / 2 자연수 합 공식을 통해 3의 값을 구할 수 있게 되었다.

이 자연수의 합인 3의 값에 2를 곱하게 되면 짝수의 합을 구할 수 있게 되고, 최종적으로 K x (K+1)이 짝수의 합을 구하는 공식인 것을 확인할 수 있고 6의 값을 얻을 수 있다.

 

예) N이 10일 때, 짝수의 총 개수는 5가되고, 5 x (5+1)을 통해 짝수의 합은 30이 된다.

     N이 17일 때, 짝수의 총 개수는 8이 되고, 8 x (8+1)을 통해 짝수의 합은 72가 된다.

 

 

 

 

C++ 표준 라이브러리 std::accumulate

 

std::accumulate 라이브러리는 배열에 있는 값들을 계산하기 위해 사용된다.이를 사용하기위해 numeric 헤더를 포함시켰다.

첫 번째 인자 값은 연산 시작 위치를 의미하고, 두 번째 인자 값은 연산 종료 위치이다.

마지막으로 세 번째 인자는 초기 값을 의미하고 return 값의 Type과 동일해야한다.

이처럼 초기 값을 1로 두고 곱셈을 할 수도 있다.

'내배캠 > TIL' 카테고리의 다른 글

24.12.09 (월)  (0) 2024.12.09
24.12.06 (금)  (1) 2024.12.06
24.12.05 (목)  (1) 2024.12.05
24.12.04 (수)  (0) 2024.12.04
24.12.02 (월)  (1) 2024.12.02
'내배캠/TIL' 카테고리의 다른 글
  • 24.12.06 (금)
  • 24.12.05 (목)
  • 24.12.04 (수)
  • 24.12.02 (월)
동그래님
동그래님
  • 동그래님
    개발자 동그래
    동그래님
  • 전체
    오늘
    어제
    • 분류 전체보기 (210)
      • 공부 (51)
        • Code Cata (50)
      • 내배캠 (151)
        • TIL (50)
        • C++ (37)
        • Unreal Engine (48)
        • GAS(Gameplay Ability System.. (16)
      • Project (7)
        • Gunfire Paragon (5)
        • Arena Fighters (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    동그래님
    24.12.03 (화)
    상단으로

    티스토리툴바