洛谷P2911 [USACO08OCT]牛骨头Bovine Bones【水题】

题目大意:输入S1,S2,S3,随机生成三个数x,y,z,求x+y+z出现次数最多的数(如果有多个答案输出最小的),其中1<=x<=S1,1<=y<=S2,1<=z<=S3。

数据范围:(2 <= S1 <= 20; 2 <= S2 <= 20; 2 <= S3 <= 40)

由题可知数据范围不大,可以直接暴力,请见代码

/*
浴谷2911
*/
#include <iostream>
using namespace std;
int main()
{
int a,b,c,x[200],ans=0,ansx=0;
cin >> a >> b >> c;
for(int i=1;i<=199;i++)x[i]=0;
for(int i=1;i<=a;i++)
for(int j=1;j<=b;j++)
for(int k=1;k<=c;k++)
x[i+j+k]++;
for(int i=1;i<=199;i++)
if(x[i]>ansx){ansx=x[i];ans=i;}
cout << ans << endl;
return 0;
}
上一篇:java中与数据库的连接


下一篇:java 线程---成员变量与局部变量