- #include<vector> 
- #include<algorithm> 
- #include<iostream> 
- #include<queue> 
- #include<stack> 
- #include<functional> 
- using namespace std; 
- struct data{ 
-   
- 	int first; 
- 	int second; 
- }; 
- class compare{ 
- public: 
- 	 bool operator()( data &a ,data &b) 
- 	 { 
- 		 if(a.first < b.first) return true; 
- 		 else false; 
- 	 } 
- }; 
-   
- int main() 
- {	 
- 	priority_queue <data , vector<data>, compare> heap; 
- 	data temp2[] = { {5,19},{2,7},{90,9},{12,6} }; 
-   
- 	for(int i = 0; i <  4 ;++i) 
- 	{		 
-        heap.push(temp2[i]); 
- 	} 
- 	while(heap.empty() == false) 
- 	{ 
- 		cout<<heap.top().first<<endl;; 
- 		heap.pop(); 
- 	} 
-   
- } 
				I2luY2x1ZGU8dmVjdG9yPgojaW5jbHVkZTxhbGdvcml0aG0+CiNpbmNsdWRlPGlvc3RyZWFtPgojaW5jbHVkZTxxdWV1ZT4KI2luY2x1ZGU8c3RhY2s+CiNpbmNsdWRlPGZ1bmN0aW9uYWw+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnN0cnVjdCBkYXRhewoKCWludCBmaXJzdDsKCWludCBzZWNvbmQ7Cn07CmNsYXNzIGNvbXBhcmV7CnB1YmxpYzoKCSBib29sIG9wZXJhdG9yKCkoIGRhdGEgJmEgLGRhdGEgJmIpCgkgewoJCSBpZihhLmZpcnN0IDwgYi5maXJzdCkgcmV0dXJuIHRydWU7CgkJIGVsc2UgZmFsc2U7CgkgfQp9OwoKaW50IG1haW4oKQp7CQoJcHJpb3JpdHlfcXVldWUgPGRhdGEgLCB2ZWN0b3I8ZGF0YT4sIGNvbXBhcmU+IGhlYXA7CglkYXRhIHRlbXAyW10gPSB7IHs1LDE5fSx7Miw3fSx7OTAsOX0sezEyLDZ9IH07CgkKCWZvcihpbnQgaSA9IDA7IGkgPCAgNCA7KytpKQoJewkJCiAgICAgICBoZWFwLnB1c2godGVtcDJbaV0pOwoJfQoJd2hpbGUoaGVhcC5lbXB0eSgpID09IGZhbHNlKQoJewoJCWNvdXQ8PGhlYXAudG9wKCkuZmlyc3Q8PGVuZGw7OwoJCWhlYXAucG9wKCk7Cgl9CgkKfQ==