有一说一,这道题其实暴力可以直接过,但是格式看错了WA了5发····惭愧惭愧
题目
ZCMU-1304
1304: 推雪人
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 1211 Solved: 373
[Submit][Status][Web Board]
Description
冬天到了,开始下雪了。松神和二哥决定出去推雪人。大家都知道一个雪人由两个雪球组成。松神和二哥决定分工合作,每人分别先滚若干个雪球,然后再组合在一起。一个小时后,松神一共滚了n个雪球,每个雪球的半径分别为a1,a2,a3…,an,与此同时,二哥一共滚了m个雪球,每个雪球的半径分别为b1,b2,b3,…,bn。他们决定每人选择出一个雪球然后推成一个雪人。由于美观的原因,假设两个雪球的半径分别为r1,r2(r1<=r2),他们认为当雪人的两个雪球的半径满足3/2r1<=r2<=2r1时,那么这个雪人是美观的。你能告诉他们,他们是否能够组成一个美观的雪人吗?
Input
多组测试数据。
每组测试数据的第一行为两个正整数n,m(1<=n,m<=100)。
第二行为n个由空格分隔的正整数代表松神滚得雪球的半径。
第三行为m个由空格分隔的正整数代表二哥滚得雪球的半径。
所有雪球的半径均不大于100。
Output
对于每组测试数据,若松神和二哥能够组成一个美观的雪人,则输出"Yes",否则输出"No"。
Sample Input
2 1
2 3
2
1 2
4
9 10
Sample Output
Yes
No
思想
这道题毫无思想可言(不然怎么是超级大水题目),直接暴力就行····
AC代码
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m;
int a[110],b[110];
while(~scanf("%d%d",&n,&m))
{
for(int i=0;i<n;i++)scanf("%d",&a[i]);
for(int i=0;i<m;i++)scanf("%d",&b[i]);
bool f = false;
for(int i=0;i<n;i++){
for(int j=0;j<m;j++)
{
if(3/2*a[i]<=b[j]&&b[j]<=2*a[i])f = true;
if(3/2*b[j]<=a[i]&&a[i]<=2*b[j])f = true;
if(f)break;
}
if(f)break;
}
if(f)cout << "Yes" << endl;
else cout << "No" << endl;
}
return 0;
}
总结
Water,没什么好总结的,别想的复杂就行,数据量才1e4,炸不了的(给ICPC写魔怔了,看什么都要算时间复杂度···不过也算是好习惯)