zoukankan      html  css  js  c++  java
  • CCF CSP 201503-2 数字排序

    思路:

    1.用数组来存储相应index出现的次数,结束后扫一遍数组;
    2.自定义一个排序即可;

    代码:

    #include<bits/stdc++.h>
    using namespace std;
    typedef pair<int,int> p;
    typedef long long ll;
    #define m_p(a,b) make_pair(a,b)
    #define p_b(a) push_back(a)
    #define rp(i,n) for(int i=0;i<n;i++)
    #define rpn(i,n) for(int i=1;i<=n;i++)
    #define l_b(a,n,x) lower_bound(a,a+n,x)-a
    #define u_b(a,n,x) upper_bound(a,a+n,x)-a
    const int N=1005;
    int arr[N];
    struct Rule{
    	bool operator()(const p & a,const p & b){
    		return a.second==b.second?a<b:a.second>b.second;
    	}
    }; 
    set<p,Rule> st;
    int main(){
    	int n;
    	cin>>n;
    	rp(i,n){
    		int a;
    		cin>>a;
    		arr[a]++;
    	}
    	rp(i,N){
    		if(arr[i]) st.insert(m_p(i,arr[i]));
    	}
    	for(auto e:st) cout<<e.first<<' '<<e.second<<'
    ';
    	return 0;
    }
    
  • 相关阅读:
    实习笔记day03
    实习笔记day02
    实习笔记day01
    第4章:数组与方法
    栈内存与堆内存的区别
    java数据类型
    保护模式指令
    空描述符
    段描述符
    全局描述符表
  • 原文地址:https://www.cnblogs.com/yuhan-blog/p/12308923.html
Copyright © 2011-2022 走看看