1800: [Ahoi2009]fly 飞行棋

 #include<cstdio>
#include<iostream>
using namespace std;
int sum[],n,ans;
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d",&sum[i]);
for(int i=;i<=n;i++)
sum[i]+=sum[i-];
for(int i=n+;i<=*n;i++)
sum[i]=sum[n]+sum[i-n];
for(int i=;i<=n;i++)
for(int j=i+;j<n+i;j++)
for(int k=j+;k<n+i;k++)
for(int l=k+;l<n+i;l++)
if(sum[j]-sum[i]==sum[l]-sum[k]&&sum[k]-sum[j]==sum[n+i]-sum[l])
ans++;
printf("%d\n",ans/);
return ;
}

n很小 直接四重循环枚举,看弧长是否相等,弧长相等弦长相等,两组边互相相等的四边形是平行四边形,圆内接平行四边形一定是矩形。

上一篇:Python flask @app.route


下一篇:oracle10g安装图解(win7)