貪心 小Y的炮 cannon 題解

2021-08-30 19:30:12 字數 981 閱讀 7544

模擬賽的題目,做的時候由於第二題表打太久了,只剩下40分鐘,想都沒想就寫了乙個爆搜20分…

p.s.解釋在**裡

#include

#include

#include

#include

#include

#include

using

namespace std;

typedef

long

long ll;

inline

intread()

while

(isdigit

(chr)

)return ans*f;

}inline

void

kai(

)const

int maxn=

250004

;struct data

}cnn[maxn]

,p[maxn]

;ll k,h[maxn]

,ans=0;

int n,m,cnt=0;

mapf;

intmain()

//貪心刪掉沒有用的炮

/* 這裡的貪心:如果乙個炮打的低,能刪掉的山的高度又小,那要它何用呢?

*/ ll dn=

0;f[0]

=0;for

(int i=

1;i<=cnt;

++i)

}//處理出高度為x的山最少要刪幾次才行(類似於揹包的做法?)

int j=1;

dn=0;

for(

int i=

1;i<=n;

++i)

printf

("%lld "

,ans)

;printf

("%lld"

,k);

}

小y的序列(模擬)題解

2020upc春季聯合賽第九場 問題 f 小y的序列 時間限制 1 sec 記憶體限制 128 mb 題目描述 又是一年 noip,高中機房的學長們都在做題,安靜的有點可怕,突然聽到隔壁機房某老師熟悉的聲音 我們看一下這道題,找找規律發現這個序列很熟悉啊,就是2,3,5,7,12這其實就是乙個a i...

小 Y 的問題

大水題一道,合法個數用 乘法原理 組合數公式 具體做法 num i 表示與i相連的點的個數 我們稱圖上的b d邊為中心邊 我們列舉中心邊 列舉兩個點,先看一側的點i,它的鄰接點有num i 個,但是其中乙個點是中心邊的另乙個點,符合條件的點有num i 1個,利用組合數公式可以求出在這些點中選2個的...

小Y的難題

font size aaaa aa近期小y迷上了數學,總是在思考各種數學問題。有一天,他不小心把墨水灑在草稿紙上。他如今能看到的是 2?3?1?4 表示看不清的地方 小y的記憶力不錯,他知道 1 每乙個?僅僅會是 三個符號之中的乙個。2 總共同擁有且僅有乙個 3 原式一定是乙個等式。如 2 3 1 ...