ZCMU-1304-雪人

来源:互联网 发布:数据库 文件系统 编辑:程序博客网 时间:2024/04/27 21:18

1304: 推雪人

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 668  Solved: 183
[Submit][Status][Web Board]

Description

冬天到了,开始下雪了。松神和二哥决定出去推雪人。大家都知道一个雪人由两个雪球组成。松神和二哥决定分工合作,每人分别先滚若干个雪球,然后再组合在一起。一个小时后,松神一共滚了n个雪球,每个雪球的半径分别为a1,a2,a3...,an,与此同时,二哥一共滚了m个雪球,每个雪球的半径分别为b1,b2,b3,...,bn。他们决定每人选择出一个雪球然后推成一个雪人。由于美观的原因,假设两个雪球的半径分别为r1,r2(r1<=r2),他们认为当雪人的两个雪球的半径满足3/2*r1<=r2<=2*r1时,那么这个雪人是美观的。你能告诉他们,他们是否能够组成一个美观的雪人吗?

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

【解析】
这题一开始神坑,没看清楚题意,他没说哪个半径是头。直接模拟就好了
#include<iostream>#include<string>#include<vector>#include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>using namespace std;int main(){    int n,m,i,j,flag;    double p,q;    while(~scanf("%d%d",&n,&m))    {           double a[n];        double b[m];        memset(a,0,sizeof(a));        memset(b,0,sizeof(b));        flag=0;        for(i=0;i<n;i++)            scanf("%lf",&a[i]);        for(i=0;i<m;i++)            scanf("%lf",&b[i]);        for(i=0;i<n;i++)        {            for(j=0;j<m;j++)            {                if(a[i]>b[j])                {                    p=a[i];                    q=b[j];                }                else                {                    p=b[j];                    q=a[i];                }                if((1.5*q)<=p&&p<=2*q)                    flag=1;            }        }        if(flag==1)            printf("Yes\n");        else            printf("No\n");    }    return 0;}

0 0
原创粉丝点击