1096 大美数 (15 分)
#include <stdio.h>
int is(int n);
int main ()
{
int i,n,a;
scanf ("%d",&n);
for (i=0;i<n;i++)
{
scanf ("%d",&a);
if (is(a)==1)
printf ("Yes\n");
else
printf ("No\n");
}
return 0;
}
int is(int n)
{
int z[100010]={0},j,i1,i2,i3,i4,q=0;
for (j=1;j<=n;j++)
{
if (n%j==0)
z[q++]=j;
}
if (q<4)
return 0;
else
{
for (i1=0;i1<q;i1++)
for (i2=i1+1;i2<q;i2++)
for (i3=i2+1;i3<q;i3++)
for (i4=i3+1;i4<q;i4++)
if ((z[i1]+z[i2]+z[i3]+z[i4])%n==0)
return 1;
return 0;
}
}