10167--Birthday Cake

////暴力求解,本题主要利用生成随机数来试探求解 ///主要函数有srand():设置随机种子,一般以当前时间来设置随机种子,即为srand((unsigned)time(NULL)) ///randomize()也是这个效果 ///rand()生成0-32767范围内的数 ///rand()和srand()都包含在头文件stdlib.h中 ///time()是日历时间,time(NULL)得到的是当前时间距离特定时间的秒数 #include<cstdio> #include<ctime> #include<cstdlib> #define max 102 #define LOCAL int solve(int n) { srand((unsigned)time(NULL)); int s[max][2]; int i; for(i=0;i<2*n;i++) scanf("%d %d",&s[i][0],&s[i][1]); while(1) { int a=-500+rand()%1001; int b=-500+rand()%1001; int cou1=0,cou2=0; for(i=0;i<2*n;i++) if(s[i][0]*a+s[i][1]*b>0) cou1++; else if(s[i][0]*a+s[i][1]*b<0) cou2++; else break; if(cou1==cou2&&cou1+cou2==2*n) { printf("%d %d/n",a,b);break; } } return 0; } int main() { #ifdef LOCAL freopen("in.txt","r",stdin); freopen("out.txt","w",stdout); #endif int n; while(scanf("%d",&n)==1) { if(n==0) break; solve(n); } return 0; }

你可能感兴趣的:(null,日历)