zoukankan      html  css  js  c++  java
  • 【HDU】5182 PM2.5

    理解好排序的方式就行。

    差值不一样,降序

    差值一样,按照第二个数值升序

    差值一样并且第二个数值也一样,按照id进行升序

    #include <iostream>
    #include <algorithm>
    #include <cstdlib>
    #include <cstdio>
    #include <string>
    #include <cstring>
    #include <cmath>
    #include <ctime>
    #include <set>
    using namespace std;
    
    
    #define read() freopen("in.txt", "r", stdin)
    #define write() freopen("out.txt", "w", stdout)
    #define rep( i , a , b ) for ( int i = ( a ) ; i <  ( b ) ; ++ i )  
    #define For( i , a , b ) for ( int i = ( a ) ; i <= ( b ) ; ++ i ) 
    #define clr( a , x ) memset ( a , x , sizeof a )  
    #define cpy( a , x ) memcpy ( a , x , sizeof a ) 
    #define _max(a,b) ((a>b)?(a):(b))
    #define _min(a,b) ((a<b)?(a):(b))
    #define LL long long 
    const int maxNumber=10002;
    
    /*int gcd(int a,int b)
    {
    	return b?gcd(b,a%b):a;
    }
    inline int lcm(int a,int b)
    {
    	return a/gcd(a,b)*b;
    }*/
    struct pm
    {
    	int id;
    	int num1;
    	int num2;
    
    };
    pm city[233];
    
    int cmp(pm a,pm b)
    {
    	if (a.num1-a.num2 == b.num1-b.num2 && a.num2 == b.num2)
    	{
    		return a.id < b.id;
    	}
    	if (a.num1-a.num2 == b.num1-b.num2)
    	{
    		return a.num2 < b.num2;
    	}
    	return a.num1 - a.num2 > b.num1 - b.num2;
    }
    int main()
    {
    	//read();
    	int n;
    	while(cin>>n)
    	{
    		for (int i = 0; i < n; ++i)
    		{
    			scanf("%d%d",&city[i].num1,&city[i].num2);
    			city[i].id = i;
    		}
    		sort(city,city+n,cmp);
    		for (int i = 0; i < n; ++i)
    		{
    			if (i == n - 1)
    			{
    				printf("%d
    ",city[i].id );
    
    			}else
    			{
    				printf("%d ",city[i].id );
    			}
    		}
    	}
        return 0;
       
    }
    

      

  • 相关阅读:
    Docker镜像与仓库(四)
    Docker网络与存储(三)
    Docker基本使用(一)
    虚拟化KVM之优化(三)
    修改CENTOS7的网卡ens33修改为eth0
    虚拟化KVM之安装(二)
    虚拟化KVM之概述(一)
    Python不同版本打包程序为.exe文件
    JSON
    同源策略(same-origin policy)及三种跨域方法
  • 原文地址:https://www.cnblogs.com/acmsummer/p/4321249.html
Copyright © 2011-2022 走看看