Acwing第 1 场周赛【完结】
說(shuō)實(shí)話題目真的不難,但是自己真的垃圾,
第一題簽到過(guò)了
第二題腦子只想貪心,過(guò)了8個(gè)點(diǎn),后來(lái)發(fā)現(xiàn)貪心有點(diǎn)問(wèn)題。又想到了用小根堆。結(jié)果TLE。最后發(fā)現(xiàn)是二分
第三題想到了求環(huán),想到了用并查集。沒(méi)有想到聯(lián)通塊的大小就是環(huán)。
目錄
- A: AcWing 3577. 選擇數(shù)字 【難度: 簡(jiǎn)單 / 知識(shí)點(diǎn): 思維】
- B: AcWing 3578. 最大中位數(shù) 【難度: 一般 / 知識(shí)點(diǎn): 二分答案】
- C: AcWing 3579. 數(shù)字移動(dòng) 【難度: 中 / 知識(shí)點(diǎn): 并查集】
A: AcWing 3577. 選擇數(shù)字 【難度: 簡(jiǎn)單 / 知識(shí)點(diǎn): 思維】
https://www.acwing.com/problem/content/3580/
其實(shí)你會(huì)發(fā)現(xiàn),每組數(shù)據(jù)求最大值,其組合的數(shù)據(jù)一定不會(huì)在這里的集合中出現(xiàn)。
#include<cstdio> #include<iostream> #include<algorithm> #include<map> using namespace std; typedef long long int LL; int main(void) {int m;cin>>m;LL x,a=0,b=0;for(int i=0;i<m;i++) cin>>x,a=max(a,x);int n; cin>>n;for(int i=0;i<n;i++) cin>>x,b=max(b,x);cout<<a<<" "<<b<<endl;return 0; }B: AcWing 3578. 最大中位數(shù) 【難度: 一般 / 知識(shí)點(diǎn): 二分答案】
https://www.acwing.com/problem/content/3581/
用排序后有單調(diào)性,故用二分答案,注意開(kāi)long long .
這道和洛谷二分題單里的跳石頭大同小異
C: AcWing 3579. 數(shù)字移動(dòng) 【難度: 中 / 知識(shí)點(diǎn): 并查集】
https://www.acwing.com/problem/content/3582/
不難看出這應(yīng)該是一個(gè)圖。
我們以
n=6 , 4 6 2 1 5 3為例
你會(huì)發(fā)現(xiàn)每一個(gè)都是一個(gè)環(huán),而環(huán)的大小正好等于連通塊的大小。
故直接套用并查集求連通塊的模板。
總結(jié)
以上是生活随笔為你收集整理的Acwing第 1 场周赛【完结】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 高斯消元法讲解
- 下一篇: 河南省第十三届ICPC大学生程序设计竞赛