조회 수 154 추천 수 0 댓글 0

#include <stdio.h>
//#include <stdlib.h>


int num_count(int a, int b, int d, int n);
int main(void)
{
	int a, b, d, n;
	int num;
	//a=성체가 되는 날  b=더이상 개체를 만들어내지 않는 날 d=죽는 날 n=날짜

	scanf(" %d %d %d %d", &a, &b, &d, &n);

	num=num_count(a, b, d, n);

	printf("%d", num%1000);

	return 0;
}
int num_count(int a, int b, int d, int n)
{
	int cnt=0, t[10001]={0}, temp;
	int i, j;

	t[0]=1;
	cnt+=1;

	for(i=1; i<=n; i++)
	{
		temp=t[0]%1000;

		if(i!=1)
			t[0]=0;

		for(j=d; j>=b; j--) //더이싱 새 개체를 만들어 내지 않는 기간부터 죽는 날짜까지
		{
			t[j]=t[j-1]%1000;
		}
		cnt-=t[d]; //죽은 개체 수만큼 빼주기

		for(j=b-1; j>=a; j--) //성체가 되어 새 개체를 만들어내기 시작하는 구간
		{
			if(j!=1)
				t[j]=t[j-1]%1000;
			else
				t[j]=temp;

			t[0]+=t[j]%1000;
			cnt+=t[j]; //새로 태어난 개체 수만큼 더하기
		}

		for(j=a-1; j>1; j--) //성체가 되기 전
		{
			t[j]=t[j-1]%1000;
		}

		t[1]=temp;
		if(i==1)
			t[0]-=temp;

		//for(j=0; j<=d; j++)
		//	t[j]%=1000;
		cnt%=1000;
		/*printf("%3d 일째: ", i); 
		for(j=0; j<=d; j++)
		{
			 printf("[%d]- %2.0f    ", j, t[j]);
		}
		printf("\n");
		printf("cnt=%.0f\n", cnt);
		system("pause");*/
	}

//	while(cnt>1000) cnt=cnt-1000;

	return cnt;
}



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. 좋은아빠되기 2019.02.15 471
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1230
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2544
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 10515
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 4888
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 8479
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 19111
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 38033
130 정올 기초다지기(문자열1-자가진단1) killerjack 2014.09.20 600
129 정올 기초다지기(함수3-형성평가6) killerjack 2014.09.20 794
128 정올 기초다지기(함수3-형성평가5) killerjack 2014.08.30 982
127 정올 기초다지기(함수3-형성평가4) killerjack 2014.08.30 1087
126 정올 기초다지기(함수3-형성평가3) killerjack 2014.08.30 1969
125 정올 기초다지기(함수3-형성평가2) killerjack 2014.08.30 657
124 정올 기초다지기(함수3-형성평가1) killerjack 2014.08.30 931
123 재귀함수 3가지랑 static!!함수 사용 killerjack 2014.08.30 911
122 재귀함수 (피보나치수열) killerjack 2014.08.30 1988
121 정올 기초다지기 (함수3-자가진단6) killerjack 2014.08.30 790
120 반올림(수정) 1 file 박윤택 2014.08.18 426
119 정올 기초다지기 함수3 자가진단 5 남쌤꺼 좋은아빠되기 2014.08.16 481
118 정올 기초다지기(함수3-자가진단5)[for버전] killerjack 2014.08.16 681
117 두 실수 사이 정수 갯수 구하기 killerjack 2014.08.16 1392
116 정올 기초다지기(함수3-자가진단4)[완성] killerjack 2014.08.16 1318
115 윤택이 반올림 좋은아빠되기 2014.08.16 363
114 반올림 file 박윤택 2014.08.15 446
113 함수3-자가진단4 file 박윤택 2014.08.15 577
112 사이정수 갯수 구하기 테스트 버전 좋은아빠되기 2014.08.02 539
111 정올 기초다지기(함수3-자가진단4) 이거 재귀함수 첨부터 다시짜야함 집에서 해볼것 killerjack 2014.07.26 952
Board Pagination Prev 1 ... 15 16 17 18 19 20 21 22 23 24 ... 26 Next
/ 26