中山紀中Day1 普及

2022-07-23 04:48:11 字數 2455 閱讀 7912

早上一起,撲面是瓢潑的大雨。跨過千山萬水,來到紀中門前,毅然以一種大無畏的英雄氣概跨進了考場。

面對四道神題。然後,我成功過五關斬六將,a掉了2道題!!!

收穫:優先佇列(大、小根堆)

wexley最近發現了乙個古老的螢幕遊戲。遊戲的螢幕被劃分成n列。在螢幕的底端,有乙個寬為m列的籃子(m思路:此題略簡單,設定左端與右端,然後判斷,移動,儲蓄即可。

見**:

#include#include

#include

#include

using

namespace

std;

int n,m,k,a[21],l=1

,r,ans;

intmain()

}while(a[i]}

printf("%d

",ans);

return0;

}

leo是乙個快樂的火星人,總是能和地球上的oiers玩得很high。

2012到了,leo又被召回火星了,在火星上沒人陪他玩了,但是他有好多好多積木,於是他開始搭積木玩。

火星人能製造n種積木,積木能無限**。每種積木都是長方體,第i種積木的長、寬、高分別為li、wi、hi。積木可以旋轉,使得長寬高任意變換。leo想要用這些積木搭乙個最高的塔。問題是,如果要把乙個積木放在另乙個積木上面,必須保證上面積木的長和寬都嚴格小於下面積木的長和寬。這意味著,即使兩塊長寬相同的積木也不能堆起來。

火星上沒有電腦,好心的你決定幫助leo求出最高的塔的高度。

對於30%的資料 n<=8

對於100%的資料 n<=3000,最後答案不會超過32位整型

題意:相對清楚,下面看思路。

思路:因為是要嚴格小於,所以每種積木都只能用一次,我們把六種情況搞下來,然後因為長大於寬,所以可以排除掉一半。接著在以長寬各自排序,會出現乙個序列。接著就是我們最熟悉的,最簡單的dp模板:最長         單調下降序列。只不過最長變成了高之和最大,下降是長寬都小,僅此而已。然後考慮了下nlogn的情況,發現替換會很奇怪,可能出問題。也就只打了n2的演算法。那也就這樣了。因為3*n=9000,所以不會有問題。

見**:

#include#include

#include

#include

using

namespace

std;

int n,h1,l1,w1,k,le=1,b[9001],ans=-0x3f3f3f

;struct

brick;

brick a[

9001

];bool

cmp(brick x,brick y)

bool

cmp1(brick x,brick y)

intmain()

sort(a+1,a+3*n+5-5+1

,cmp);

while(k<=3000

)

}for(int i=1;i<=3*n;i++)

for(int i=1;i<=3*n;i++)

}for(int i=1;i<=3*n;i++)

printf("%d

",ans);

return0;

}

treeland是乙個有n個城市組成的國家,其中一些城市之間有單向邊連通。在這個國家中一共有n-1條路。我們知道,如果我們不考慮路的方向,那麼我可以從任意城市到達任意城市。

最近,treeland的總理candy為了發展經濟,想要從這n個城市中選擇乙個作為treeland的首都,首都必須要能到達其他任意城市,這使得有些道路必須反向,付出的代價即需要反向的道路條數。

candy想要選擇乙個城市作為首都,使得付出的代價最小。可能有多個城市滿足條件,按編號從小到大輸出。   

思路:根據題解,先從1號節點遍歷整棵樹,讓1號節點滿足要求,可知需要的答案。然後順便在遍歷的過程中求出對節點u,需要幾次反轉讓u能到達以u為子樹的每個節點。完成之後,讓u點可以走到1號點,這樣的反轉條數就是從1點到u點反轉的次數。然後加上之前記錄下的東西就可以了。

馬上假期就要到了,thu的神犇leopard假期裡都不忘學霸,現在有好多門功課,每門功課都耗費他1單位時間來學習。

他的假期從0時刻開始,有1000000000個單位時間(囧rz)。在任意時刻,他都可以任意一門功課(編號1~n)來學習。

因為他在每個單位時間只能學習一門功課,而每門功課又都有乙個截止日期,所以他很難完成所有n門功課。

對於第i門功課,有乙個截止時間di,若他能學完這門功課,他能夠獲得知識pi。

在給定的功課和截止時間下,leopard能夠獲得的知識最多為多少呢?

思路:必須得有乙個反悔的過程,dp不大現實,貪心一次性貪完也不大現實。所以就出現了乙個新的思路:將時間排序,有就放,如果沒時間放,就和最小的比較,交換,再維護乙個小根堆即可。

詳見:yycakioi

總體來說,今天200分,考了個第三出來,成績還算可以,爭取消化乾淨,繼續努力!

中山Day5 普及

今天題目真是賊難吶。才38。收穫 樹狀陣列單個修改 樹狀陣列區間修改 題意 有n個數,問 從中取任意個數,他們的和為質數的方案數是多少?n 50 暴力模擬即可,這裡不講。見 include include include include using namespace std int n,ans,s...

中山DAy2 普及

今天挺不友好的,早上忘記定鬧鐘,晚了半小時起床,然後早上信心滿滿打算弄他個300分。結果 132.2分 wtf?題意 有n頭奶牛,k種細菌 k 15 給你每頭奶牛攜帶的細菌種類,問 若讓選出所有奶牛攜帶細菌少於d種,最多選幾頭奶牛?思路 上手就用了動歸,可能是昨天打積木那題,自己信心爆棚。然後 神奇...

20190801中山晨考DAY1 考場心態

今天是第一天來中山,有點小期待啊,我來說一下吧,這次考試,我考的一般,但是我覺得嗎,自己差的不是一點半點啊,所以qaq,我要努力訓練,哈哈哈哈。首先我來看一下這次考試的題目吧 水叮噹得到了一塊五顏六色的格仔形地毯作為生日禮物,更加特別的是,地毯上格仔的顏色還能隨著踩踏而改變。為了討好她的偶像虹貓,水...