hdu 4814 Golden Radio Base

时间:2023-03-08 23:48:02
hdu 4814 Golden Radio Base

详解见:http://blog.****.net/tri_integral/article/details/18666797

#include<cstdio>
#include<cstring>
#define maxn 105
#include<algorithm>
using namespace std;
int s[maxn]; int main()
{
int n;
int tmp;
while(scanf("%d",&n)!=EOF)
{
memset(s,,sizeof s);
s[]=n;
bool flag;
while()
{
flag=;
for(int i=;i>=;i--)
{
if(s[i]>)
{
s[i-]+=s[i]/;
s[i+]+=s[i]/;
s[i]%=;
flag=;
}
}
for(int i=;i>=;i--)
{
if(s[i]&&s[i-])
{
tmp=min(s[i],s[i-]);
s[i-]+=tmp;
s[i]-=tmp;
s[i-]-=tmp;
flag=;
}
}
if(flag==)break;
}
int head,tail;
for(int i=;i<;i++)
if(s[i]!=)
{
head=i;
break;
}
for(int i=;i>=;i--)
{
if(s[i]!=)
{
tail=i;
break;
}
}
for(int i=head;i<=tail;i++)
{
printf("%d",s[i]);
if(i==&&tail>)putchar('.');
}
puts("");
}
return ;
}