这个题让求圆中的矩形,先让我们想想矩形有什么特点,对角线相等,四个角都是直角。直角和圆联系到一起不难想到直径所对的圆心角是直角。
因此我们就可以得出只要找到有多少条直径,从中选出2条的组合数即是答案。
#include<iostream>
#include<cstdio>
using namespace std;
int sum,n,ans,cnt;
int a[30];
bool b[30];
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
sum+=a[i];
}
if(sum%2!=0) { cout<<0;return 0;}
sum=sum/2;
for(int i=1;i<=n;i++)
{
int j=i;cnt=0;
if(b[i]) continue;
while(cnt<sum)
{
cnt+=a[j];
j++;
if(j==n+1) j=1;
}
if(cnt==sum)
{
b[i]=b[j]=1;ans++;
}
}
cout<<ans*(ans-1)/2;
return 0;
}