重载问题
1 #include <bits/stdc++.h> 2 using namespace std; 3 /* 4 bool cmp1(int x,int y) 5 { 6 return x<y; 7 } 8 struct Node 9 { 10 int x,y; 11 }e[5]; 12 bool cmp2(Node a,Node b){ 13 if(a.x!=b.x) return a.x<b.x; 14 } 15 */ 16 //int a[5]; 17 struct Node{ 18 int x,y; 19 Node(){} 20 Node (int x,int y):x(x),y(y){} 21 bool operator <(const Node &a) const{ 22 return x>a.x; 23 } 24 /* 25 26 1 3 27 2 2 28 3 1 29 30 */ 31 }; 32 int main() 33 { 34 /* 35 for(int i =0;i<=3;i++){ 36 a[i] = 6-i; 37 } 38 sort(a,a+4,cmp1); 39 for(int i =0;i<4;i++){ 40 printf("%d\n",a[i]); 41 } 42 3 43 4 44 5 45 6 46 */ 47 /* 48 49 for(int i =0;i<3;i++){ 50 scanf("%d%d",&e[i].x,&e[i].y); 51 } 52 sort(e,e+3,cmp2); 53 for(int i =0;i<3;i++){ 54 printf("%d %d\n",e[i].x,e[i].y); 55 } 56 3 6 57 2 4 58 1 0 59 __________ 60 1 0 61 2 4 62 3 6 63 64 */
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <map>
#include <utility>
#include <vector>
#include <queue>
using namespace std;
#define ll long long
#define P pair<ll,ll>
struct Node{
int x,y;
Node(){}
Node(int x,int y):x(x),y(y){}
bool operator < (const Node&a) const{
return x<a.x;
}
}e[100];
int main()
{
/*
for(int i =0;i<3;i++){
e[i].x =i+1;
e[i].y=2*i;
}
sort(e,e+3);
for(int i =0;i<3;i++) printf("%d %d\n",e[i].x,e[i].y);
1 0
2 2
3 4
*/
priority_queue<Node>q;
for(int i =0;i<3;i++){
q.push(Node(3-i,i+1));
}
while(!q.empty()){
Node u =q.top();
q.pop();
printf("%d %d\n",u.x,u.y);
}
/*
3 1
2 2
1 3
*/
return 0;
}