본문 바로가기

카테고리 없음

백준 8393번 C++ 수식을 이용하여 깔끔하게 풀기

728x90

for문을 이용하여 푸는 일반적인 방법도 있지만 수식 수열의 합을 이용하여 더욱 깔끔하게 구현하는 방법이다

우선 for문을 이용한 방법

#include <iostream>
using namespace std;
int main(){
int N;
int sum = 0;
cin >> N;
for(int i=0; i<=N; i++){
sum = sum + i;
}
cout << sum << endl;
return 0;
}

sum = 0; 지정을 반드시 해줘야 한다

 

수열의 합을 이용한 방법

#include <iostream>
 
using namespace std;
 
int main(int argc, char const *argv[]) {
int N;
cin >> N;
cout << N * (N + 1) / 2;
return 0;
}

단순해진 코드문이다

이 논리의 증명 방법으로는 

K가 1부터 N까지의 합은 곱의 절반과 같다는 공식이다

짝수 * 홀수의 곱은 반드시 짝수가 나오므로 2로 나누어 진다

728x90