瀋陽集訓day4

2021-08-02 04:26:21 字數 4355 閱讀 9234

憂傷地吐槽&記錄

沒錯,今天已經day5了,因為day4有點失敗,沒寫,大概就是這麼意思,t1寫的正解,t2線段樹,乙個小時可以搞出來的結果非得去寫第三題正解,還寫掛了只得了十分,初三的大佬20行**貪心得了八十,只是感到心累,t4單調棧也沒寫,才得了150/400,離大佬們的距離越來越遠,上去講了兩道題的題解,t1竟然歪打正著把正解yy出來了,乙個大佬表示早就知道這種演算法,我還以為這演算法是我原創的,t3dp方程yy出來後,用單調佇列搞,二分查詢複雜度控制在nlogn,結果gyk大佬一句話就點出了其中乙個致命錯誤,怪不得正解寫掛,調了太久沒發現這個錯誤,其實也只需要fenwick維護一下即可,總之該拿的分好多沒拿,再加上前一天的100分扔掉,離大佬們的差距越來越遠,感到深深絕望,出來的時候答應了各位大佬要發部落格,所以還是發一下吧

【問題描述】

tom 喜歡研究各類質數問題,有一天他用人腦生成了[l,r][l,r]的所有質 數,但他的記憶力不太好,以至於忘記了生成了多少個質數,你的任務就是幫他 統計他一共生成了多少個質數。

【輸入格式】

從檔案 prime.in 中輸入資料。

輸入第一行包含乙個正整數 t,表示資料組數。

接下來 t 行。

每行兩個整數 l,r 分別表示你需要的統計的區間大小。

【輸出格式】

輸出到檔案 prime.out 中。

輸出僅包含 t 行,每行乙個整數,為最終答案。

【樣例輸入】

2 1 10 55 77

【樣例輸出】

4 5

【資料規模與約定】

對於 30%的資料,1≤l,r≤103。

對於 60%的資料,1≤l,r≤106,r−l≤1000。

對於 100%的資料,1≤l,r≤109,r−l≤1000000,t≤10。

資訊學奧賽校際聯訓

第 3 頁 共 7 頁

【問題描述】

oier 們最近的旅遊計畫,是到長春淨月潭,享受那裡的湖光山色,以及明 媚的陽光。你作為整個旅遊的策劃者和負責人,選擇在潭邊的一家著名的旅館住 宿。這個巨大的旅館一共有 n (1 <= n <= 50000)間客房,它們在同一層樓中順次 一字排開,在任何乙個房間裡,只需要拉開窗簾,就能見到波光粼粼的潭面。 所有的旅遊者,都是一批批地來到旅館的服務台,希望能訂到 di (1 <= di <= n)間連續的房間。服務台的接待工作也很簡單:如果存在 r 滿足編號為 r..r+di-1 的房間均空著,他就將這一批顧客安排到這些房間入住;如果沒有滿足條件的 r, 他會道歉說沒有足夠的空房間,請顧客們另找一家賓館。如果有多個滿足條件的 r,服務員會選擇其中最小的乙個。 旅館中的退房服務也是批量進行的。每乙個退房請求由 2 個數字 xi、di 描 述,表示編號為 xi..xi+di-1 (1 <= xi <= n-di+1)房間中的客人全部離開。退房前, 請求退掉的房間中的一些,甚至是所有,可能本來就無人入住。 你的工作,就是寫乙個程式,幫服務員為旅客安排房間。你的程式一共需要 處理 m (1 <= m <=50000)個按輸入次序到來的住店或退房的請求。第乙個請求到 來前,旅店中所有房間都是空閒的。

【輸入格式】

從檔案 hotel.in 中輸入資料。

第 1 行: 2 個用空格隔開的整數:n、m 第 2..m+1 行: 第 i+1 描述了第 i 個請求,如果它是乙個訂房請求,則用 2 個 數字 1、di 描述,數字間用空格隔開;如果它是乙個退房請求,用 3 個以空格隔 開的數字 2、xi、di 描述。

【輸出格式】

輸出到檔案 hotel.out 中。

第 1..??行: 對於每個訂房請求,輸出 1 個獨佔 1 行的數字:如果請求能被 滿足,輸出滿足條件的最小的 r;如果請求無法被滿足,輸出 0。

【樣例輸入】

10 6 1 3 1 3 1 3

資訊學奧賽校際聯訓

第 4 頁 共 7 頁

1 3 2 5 5 1 6

【樣例輸出】

1 4 7 0 5

【資料規模與約定】

對於 20%的資料, 1<=n<=100,1<=m<=200

對於 100%的資料,1 <= n <= 50000 ,1 <= m <= 50000,資料有梯度。

資訊學奧賽校際聯訓

第 5 頁 共 7 頁

【問題描述】

oier 們都喜歡打電腦遊戲,但每個人玩遊戲的能力上也存在著巨大的差距。

oier 們被分成兩個遊戲戰隊,處於公平考慮,要盡量使這個分配方案平均。那

麼,在分配前,你要計算出分配方案中,兩個戰隊遊戲能力的最小的差距是多少。

【輸入格式】

從檔案 share.in 中輸入資料。

第一行:乙個數字 t,表示有 t 組測試點。

對於每個測試點

第一行是乙個整數 n,代表 oier 的總數。 第二行若干個正整數 ai,分別 代表每個 oier 的遊戲戰力。

【輸出格式】

輸出到檔案 share.out 中。

t 行,每行乙個整數,為兩個戰隊遊戲能力的最小的差距

【樣例輸入】

2 4

1 2 3 4

3 1 2 4

【樣例輸出】

0 1

資訊學奧賽校際聯訓

第 6 頁 共 7 頁

【資料規模與約定】

對於 10%的資料,n≤15 對於 30%的資料, n≤1000,∑ai≤105

對於 50%的資料,n≤100,000 對於 100%的資料,n≤106,∑ai≤106,t≤3

資訊學奧賽校際聯訓

第 7 頁 共 7 頁

【問題描述】

oier 們經過了幾個月努力的學習,教練決定讓 oier 們放假。假期可以在 1…n 天內任意選擇一段(需要連續),每一天都有乙個享受指數 w。但是 oier 們的要求非常苛刻,假期不能短於 p 天,否則 oier 們不能得到足夠的休息; 假期也不能超過 q 天,否則 oier 就會有荒廢學業的危險。我們想知道 oier 們能獲得的最大享受指數。

【輸入格式】

從檔案 holiday.in 中輸入資料。

第一行:n,p,q. 第二行:n 個數字,中間用乙個空格隔開。

【輸出格式】

輸出到檔案 holiday.out 中。

乙個整數,oier 們能獲得的最大享受指數。

【樣例輸入】

5 2 4 -9 -4 -3 8 -6

【樣例輸出】

5 【資料規模與約定】

對於 50%的資料,1=

#include 

#include

#include

#include

#define maxn 1000000+10

bool inp[maxn];

using

namespace

std;

int l,r,t;

int cnt(int l, int r)

if(l<=1)inp[1-l]=1;

if(l<=2)inp[2-l]=0;

int num=0;

for(i=0;iif(!inp[i]) num++;

return num;

}int main()

return

0;}

t3寫掛的資料結構優化dp

#include

#include

#include

#include

#define maxn 1000000+10

using namespace std;

int a[maxn],dp[maxn],q[maxn],cnt[maxn],head,tail,t,n;

inline int readin()

int find(int l,int r,double num)

int main()

printf("%d\n",dp[n]-(cnt[n]-dp[n]));

}return

0;}

t4的暴力

#include

#include

#include

#define maxn 1000000

#define minn 100

using

namespace

std;

int a[maxn];

int maxn=-100000000;

int cnt[maxn],n,p,q;

inline

int readin()

int main()

}printf("%d",maxn);

return

0;}

湖南集訓Day4

上午的數論感覺還可以,嗯,感覺。因為畢竟我數學弱,只聽懂一半什麼的,感覺證明還是比較顯然的。話說這金牌爺長得好像我某物理老師啊 下午的題終於不是clj出的了,沒辣麼虐了。第一題疑似回文自動機,然而並不會,於是dp水了60分。第二題想了下應該是樹鏈剖分,然後發現搞不出來,回去水第一題,然後水完回來繼續...

福州集訓DAY4

上午講的數論我基本都會 但是題目都不會做啊 有這些注意點 c 中的模運算和通常意義上的mod模運算是不一樣的。c 中 運算保留符號,也就是負數取模之後還是負數。但是通常意義上的mod運算得到的結果都是自然數。c 的 並不是向下取整,而是向0取整。先把符號去掉,再向下取整,再添上符號 原根的概念和用法...

雅禮集訓Day4

今天炸的1p。t1,給你100次詢問,每次l,r,選 l,r 中的若干數進行異或,求有多少種結果,1 l r 1e18.做法 暴力很顯然是將l,r這些數加入線性基,然後算一下線性基里有多少個數。我們可以考慮線性基的每一位最早在多久被加入。這個就可以看l了,它二進位制的最高位很顯然是一開始就加入線性基...