WEEK10限時模擬 B 團隊聚會

2021-10-05 19:27:17 字數 1612 閱讀 4543

思路:

本題比較複雜,但是並不難,關鍵在於找每乙個時間段有空的人數以及解決輸入輸出問題。

1.構建時間類date,年月日小時分鐘秒,實現基本的運算符號過載。

2.初始化變數,輸入每個成員事務的時間點,對所有時間點公升序排序,從最左側開始,首先確定空閒時間段最長的右邊界,此時間滿足最少兩人有空且缺席的不能超過乙個人。然後確定下一輪時間段。

**:

#include

#include

#include

#include

using

namespace std;

const

int maxn=

30000

;struct date

date

(int _y,

int _m,

int _d,

int _h,

int _m,

int _s):y

(_y),m

(_m),d

(_d),h

(_h),m

(_m),s

(_s)

bool

operator

<

(const date &x)

const

bool

operator!=(

const date &x)

const

bool

operator==(

const date &x)

const

bool

operator

<=

(const date &x)

const

date operator+(

int x)

while

(temp.d>30)

while

(temp.m>12)

return temp;

}}a[maxn]

;int idx,num;

vector v;

string str;

intmain()

}sort

(a+1

,a+idx+1)

; date st

(1800,1

,1,0

,0,0

);date ed

(2200,1

,1,0

,0,0

);int flag;

if(a[1]

==st)

flag =0;

else

for(

int i=

1;i<=idx;i++

) i--;if

(flag)

}else}}

if(flag)

v.push_back

(ed)

;int lab=0;

cout<<

"scenario #"

<":"

int i=

1;isize()

;i+=2)

}if(!lab)

cout<<

}

week10限時模擬

東東轉魔方 注意在某段連續s 連續t的字串中,若tnum snum,那麼此時刪除完st之後,t會剩餘,這些剩餘的t不會再有用處,即不會再用這些t構成st。但是,若刪除完st之後,s剩餘,那麼這些s是有用的!舉個例子,sssstttstt sssttstt sststt sstt st 空,連續的s ...

Week10限時大模擬

a題 簽到題 東東有乙個字串x,該串包含偶數個字元,一半是 s 字元,一半是 t 字元 東東可以對該字串執行 1010000 次操作 如果存在 st 是該串的子串,則刪除掉最左邊的 st。即 tsttss ttss sssttt sstt st 空 include include using nam...

Week10 限時大模擬 A 簽到題

problem statement 東東有乙個字串x,該串包含偶數個字元,一半是 s 字元,一半是 t 字元 東東可以對該字串執行 1010000 次操作 如果存在 st 是該串的子串,則刪除掉最左邊的 st。即 tsttss ttss sssttt sstt st 空 input 2 x 200,...