九度oj 題目1178 複數集合

2021-07-03 15:27:45 字數 1048 閱讀 1108

鏈結

題目描述:乙個複數(x+iy)集合,兩種操作作用在該集合上:

1、pop 表示讀出集合中複數模值最大的那個複數,如集合為空 輸出  empty  ,不為空就輸出最大的那個複數並且從集合中刪除那個複數,再輸出集合的大小size;

2 insert a+ib  指令(a,b表示實部和虛部),將a+ib加入到集合中 ,輸出集合的大小size;

最開始要讀入乙個int n,表示接下來的n行每一行都是一條命令。

輸入:輸入有多組資料。

每組輸入乙個n(1<=n<=1000),然後再輸入n條指令。

輸出:根據指令輸出結果。

樣例輸入:

3

popinsert 1+i2

pop

樣例輸出:

empty

size = 1

1+i2

size = 0

模相等的輸出b較小的複數。

a和b都是非負數。

分析 用優先佇列,特別要注意的一點是當完成一組操作後,要將優先佇列中的所有元素彈出,再開始下一組操作!!!

ac**

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define inf 2<<20

#define base 1000

using namespace std;

struct node

;struct cmp

};int main ()

}else if(s1[0]=='i')

}while(!q.empty())

q.pop();

}return 0;

}

九度OJ題目1178 複數集合

題目1178 複數集合 時間限制 1 秒 記憶體限制 32 兆 特殊判題 否 提交 7339 解決 1345 題目描述 乙個複數 x iy 集合,兩種操作作用在該集合上 1 pop 表示讀出集合中複數模值最大的那個複數,如集合為空 輸出 empty 不為空就輸出最大的那個複數並且從集合中刪除那個複數...

九度OJ 題目1018

題目1018 統計同成績學生人數 題目描述 讀入n名學生的成績,將獲得某一給定分數的學生人數輸出。輸入 測試輸入包含若干測試用例,每個測試用例的格式為 第1行 n 第2行 n名學生的成績,相鄰兩數字用乙個空格間隔。第3行 給定分數 當讀到n 0時輸入結束。其中n不超過1000,成績分數為 包含 0到...

九度OJ 題目1123 採藥

一.題目描述 辰辰是個很有潛能 天資聰穎的孩子,他的夢想是稱為世界上最偉大的醫師。為此,他想拜附近最有威望的醫師為師。醫師為了判斷他的資質,給他出了乙個難題。醫師把他帶到個到處都是草藥的山洞裡對他說 孩子,這個山洞裡有一些不同的草藥,採每一株都需要一些時間,每一株也有它自身的價值。我會給你一段時間,...