社区讨论
求助(C++)
P1096[NOIP 2007 普及组] Hanoi 双塔问题参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @lvz89hs2
- 此快照首次捕获于
- 2024/05/09 20:31 2 年前
- 此快照最后确认于
- 2024/05/09 22:16 2 年前
CPP
#include<bits/stdc++.h>
#define F(x,y,z) for(int i=x;i<=y;i+=z)
using namespace std;
int n;
int a[205],b[205],c[205];
string aa[20005];
string jf(string s,string t)
{
reverse(s.begin(),s.end());
reverse(t.begin(),t.end());
F(0,s.size()-1,1)
{
a[i]=s[i]-'0';
}
F(0,t.size()-1,1)
{
b[i]=t[i]-'0';
}
int l=max(s.size(),t.size());
F(0,l-1,1)
{
c[i]=a[i]+b[i];
}
int jw=0;
F(0,l-1,1)
{
c[i]+=jw;
jw=c[i]/10;
c[i]%=10;
}
if(jw!=0)
{
l++;
c[l-1]=jw;
}
if(c[l+1]) l++;
string x="";
for(int i=l-1;i>=0;i--)
{
x=x+char(c[i]+'0');
}
return x;
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>n;
aa[1]="1";
F(2,n,1)
{
aa[i]=jf(jf(aa[i-1],aa[i-1]),"1");
}
cout<<jf(aa[n],aa[n]);
return 0;
}
就对了第二个样例,其他都WA了
回复
共 0 条回复,欢迎继续交流。
正在加载回复...