다비 파수

1297 단어
피 보 나치 수열
제목 사이트 주소http://acm.hdu.edu.cn/showproblem.php?pid=1715
//15Ms//오프라인 방식
사실 그 후에 보면 이것 이 바로 물의 안 되 는 알고리즘 이다. 바로 배열 의 형식 으로 만 든 것 이다. 그러나 그 후에 피 보 나 계 수열 과 유사 하 게 할 때 연산 을 이렇게 하면 배열 이 열 리 는 것 도 부족 하기 때문에 더욱 정확 한 알고리즘 이 필요 하 다. 예 를 들 어 빠 른 속도 등 을 이용 하여 연산 을 해 야 한다.상세 한 내용 은 블 로그//전체적인 사고방식 은 낮은 자 리 를 앞 에 두 는 것 이다. 그러면 비교적 간단 하고 진 위 는 간단 하 다.
#include <iostream>
#include <cstring>
using namespace std;
int a[1001][1001];
int count[1001];//          
int main ()
{
    memset(a,0,sizeof(a));
 a[1][1]=a[2][1]=1;
 count[1]=count[2]=1;
 int i,j,k;
 for(i=3;i<=1000;i++)
 {
  k=0;
  for(j=1;j<=count[i-1];j++)//  
  {
   k++;
   a[i][k]=a[i-1][j]+a[i-2][j]+a[i][k];//           ,     
   if(a[i][k]>9)
   {
    a[i][k+1]=a[i][k]/10;
    a[i][k]=a[i][k]%10;//  
    if(j==count[i-1])//         ,   k  ,           
     k++;
   } 
  } 
  count[i]=k;//          
 }
 scanf("%d",&k);
 while(k--)
 {
  cin>>i;
  for(j=count[i];j>=1;j--)
   printf("%d",a[i][j]); 
  printf("
"); } return 0; }

좋은 웹페이지 즐겨찾기