HGOI11 3集訓題解

2021-08-30 19:34:24 字數 2126 閱讀 9054

今天這個打 noi.ac 的模擬題,打得我心裡發毛,這個要是到聯賽我不是爆零?

題目質量蠻高的,官方給出的題解就比較的隨意了(其實他給我markdown寫好了233)

【題目描述】

#include

#define ll long long

using

namespace std;

intread()

const

int n=

2e5+10;

int n,x;

int a[n]

;int

main()

cout<}

【題目描述】

std是離線演算法,考慮先把圖建好,然後倒著刪邊,每刪掉一條邊,邊上的節點度數減一,它的節點響鈴的節點數的入度都減一,如果圖建好之後的度數還是比k小,那麼他就不能對答案做出貢獻

#include

using

namespace std;

intread()

const

int n=

200010

;struct edgeedge[n<<1]

;int head[n]

,tot=0;

int d[n]

;bool deleted[n]

,in[n]

;int u[n]

,v[n]

;int n,m,k,ans[n]

,ss;

void

add(

int u,

int v,

int id)

void

dfs(

int u)}}

intmain()

ss=n;

for(

int i=

1;i<=n;i++

) in[i]=1

;for

(int i=

1;i<=n;i++

)dfs

(i);

for(

int i=m;i>=

1;i--

)for

(int i=

1;i<=m;i++

)printf

("%d\n"

,ans[i]);

}

【題目描述】

給出數列a,r

a,ra,

r,給出m次操作交換ci,

cj

c_i,c_j

ci​,cj

​,求出對於每次交換後

max ⁡a

i∗rj

\max

maxai​

∗rj​

其中滿足: a,r

a,ra,

r為任意組合,只要滿足i≠j

i\ne j

i̸​=j

#include

#define ll long long

using

namespace std;

intread()

const

int n=

30100

;int n,q;

bool visited[n]

;struct node

bool

operator

<

(const node t)

const

}a[n]

,rr[n]

;int ca[n]

,cr[n]

;ll f[n][2

],dp[n]

;const ll inf=

-3.1e16

;inline ll match

(int aa,

int b)

inline

void

update

(int pos)

intmain()

dp[n+1]

=0;for

(int i=n;i;i--

)printf

("%lld\n"

,dp[1]

);}}

HGOI7 7集訓題解

今天這把題有點簡單,除了第二題數學方法沒想到之外,剩下的250草草收場。題目描述 include include include include include include include using namespace std void fff const int maxn 55 int be...

HGOI7 10集訓題解

今天開局狀態不行.noip2013day2的題.模擬賽輸入輸出打錯了 w w 在devc 下真的看不出來好嘛 然後果斷地爆了個零。題目描述 include include include include include using namespace std void fff const int m...

HGOI7 11集訓題解

首先宣告 由於今天一道題都沒有做出來 第一題只騙了30分 真的是題目太難 orz 所以以下的題目標程都是大佬提供的 題目描述 include include include include include define n 100100 using namespace std int n,k dou...