区域赛增补名额选拔赛第C题

题目大意

题目链接


求两个时刻距离的变化大小,开始距离大的,在相同时间里面距离的变化就更大。判断给出的数据是否满足这个条件

分析

直接模拟过程


代码

#include 
#define MAX_N 100000
using namespace std;
typedef long long ll;
struct number
{
    int x;
    int y;
    int z;
}num1[MAX_N],num2[MAX_N];//这道题没有必要存每个星球的坐标
struct result
{
    ll res1;
    ll res2;
    ll sub;
}res[MAX_N];
bool cmp1(result a,result b)
{
    if(a.res1!=b.res1)
        return a.res1=res[i].res2))
            {
                flag=1;
                break;
            }
            if((i+1)=res[i+1].sub)
                {
                    flag=1;
                    break;
                }
                /*这个细节就在于读题目的仔细,题目说离地球越远的星球的远离速度越快
                换言之就是如果距离地球的距离相等的话,那么远离的速度也是相等的*/
            }
            /*最开始的时候并没有分成两个if语句,要么就造成数据越界,要么最后一个
              位置的时候无法比较res[i].res1和res[i].res2的大小
            */
        }
        if(flag)
            printf("No\n");
        else
            printf("Yes\n");
    }
    else 
    {
        sort(res+1,res+n,cmp2);
        int flag=0;
        for(int i=1;i

总结
读题一定要仔细,不要在读题上面省略时间。然后,一定要把细节处理到位,不然即使思路大致正确,但还是不能通过

你可能感兴趣的:(区域赛增补名额选拔赛第C题)