北郵OJ虛數

2021-09-12 17:41:45 字數 1222 閱讀 1420

乙個複數(x+iy)集合,兩種操作作用在該集合上:     1、pop 表示讀出集合中複數模值最大的那個複數,如集合為空 輸出  empty  ,不為空就輸出最大的那個複數並且從集合中刪除那個複數,再輸出集合的大小size;     2 insert a+ib  指令(a,b表示實部和虛部),將a+ib加入到集合中 ,輸出集合的大小size;     最開始要讀入乙個int n,表示接下來的n行每一行都是一條命令。
輸入描述:

輸入有多組資料。

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

輸出描述:

根據指令輸出結果。

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

a和b都是非負數。

示例1輸入

3pop

insert 1+i2

pop輸出

empty

size = 1

1+i2

size = 0

#include

#include

#include

#include

using

namespace std;

struct complex_num};

intmain()

}elseif(

strcmp

(str,

"insert")==

0)}return0;

}

#include

#include

#include

#include

#include

using

namespace std;

struct efushu[

1000];

//定義複數的集合

bool

cmp(e a,e b)

intmain()

}if(flag==0)

printf

("empty\n");

//判空

else

else

size--

; mark[size]

=false;}

printf

("size = %d\n"

,size)

;//輸出大小}}

else

}return0;

}

北郵OJ 108 虛數

時間限制 1000 ms 記憶體限制 65536 kb 給你乙個複數集合,保證aj和bj都是整數,初始為空集。每次會給你如下兩種操作中的一種 1.insert x iy 其中x,y都是整數。表示在集合中加入乙個複數 x iy,同時輸出此時集合的大小 2.pop 如果集合為空集直接返回 empty 如...

北郵OJ打牌

牌只有1到9,手裡拿著已經排好序的牌a,對方出牌b,用程式判斷手中牌是否能夠壓過對方出牌。規則 出牌牌型有5種 1 一張 如4 則5.9可壓過 2 兩張 如44 則55,66,77,99可壓過 3 三張 如444 規則如 2 4 四張 如4444 規則如 2 5 五張 牌型只有12345 23456...

北郵OJ樹查詢

有一棵樹,輸出某一深度的所有節點,有則輸出這些節點,無則輸出empty。該樹是完全二叉樹。輸入描述 輸入有多組資料。每組輸入乙個n 1 n 1000 然後將樹中的這n個節點依次輸入,再輸入乙個d代表深度。輸出描述 輸出該樹中第d層得所有節點,節點間用空格隔開,最後乙個節點後沒有空格。示例1輸入 41...