首页 > 代码库 > ZOJ 1633

ZOJ 1633

迭代

每个数对应前面的一个数

#include<stdio.h>#include<iostream>using namespace std;#define max 88long long s[max], n,p;char *first="T.T^__^";void Init(){    s[0]=7;    s[1]=10;    int i;    for(i=2; i <= max; i++)        s[i]=s[i-1]+s[i-2];}int getp(){    int i=0;    while(n>s[i])        i++;    return i-1;}int main(){    Init();    while(scanf("%lld",&n)!=EOF)    {        while(n>7)        {            p=getp();            n-=s[p];        }        cout<<first[n-1]<<endl;    }    return 0;}
View Code

 

ZOJ 1633