2009~2014/C/C++
[C언어 기출문제&풀이] herd sum
malu
2010. 11. 9. 22:48
프로그램 명: herd
제한시간: 1 초
수 N 이 입력으로 들어올 때 , 수들의 순차적인 합으로 N 을 만들수 있는 가지수를 출력하는게 문제이다.
15 인 경우
- 15
- 7 + 8
- 4 + 5 + 6
- 1 + 2 + 3 + 4 + 5
10 인 경우
- 10
- 1 + 2 + 3 + 4
입력
수 N ( 1 <= N <= 10,000,000 ) 이 입력으로 주어진다.출력
가지 수를 출력한다.입출력 예
입력 15 출력 4
출처:USACO 2003 March Orange
풀이 : 그냥 다중반복문 돌리면 되요.. 쉬워서 풀이라고 쓸게 없네
소스코드
#include <stdio.h>
int main()
{
int n,i,j,sum,count=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum=0;
for(j=i;;j++)
{
sum+=j;
if(sum==n) count++;
if(sum>n) break;
}
}
printf("%d",count);
}