#include<iostream> using namespace std; int main() { int i,a[14]={1,2,7,5,30,169,441,1872,7632,1740,93313,459901,1358657,2504881}; while(cin>>i&&i!=0) cout<<a[i]<<endl; return 0; } 还是打表 #include<iostream> #include<cstdio> using namespace std; int main() { int k,m,i,j,c1,*a,x,round,s,t; int sur[14]={0}; for(k=1;k<14;++k) { a=new int[2*k+1]; for(m=k+1;true;++m) { x=2*k; s=m%x; if(s!=0&&s<=k) { m+=k-s; continue; } c1=0; t=m%(x-c1); t=t?t:x-c1; for(i=1;i<2*k+1;++i)