ZOJ 1633

时间:2024-01-07 08:09:50

迭代

每个数对应前面的一个数

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