border="0" width="330" height="86" src="">
mstdream 舉辦了一場搶答比賽!這場搶答比賽有 n 支隊伍參賽,第 i 支隊伍將會被分配乙個隨機值 si, 每乙個問題, si 值較小的隊伍會擁有優先發言權, 於是 mstdream 想知道所有隊伍最小的 si 值, 以便統計 。
但是,由於各種各樣的原因,一些隊伍的 si值會變化,mstdream想讓你幫忙,對於每次修改後求出所有隊伍中最小的 si 值 。
由於隊伍實在太多了!我們將採用資料生成的方式讀入資料
我們將給出n, m, x0, x1, a, b, c七個數,對於 c++ 語言,我們將採用如下讀入 :
#define uint unsigned int
uint x0, x1, a, b, c, n, m;
uint now = 1, tot = 0;
uint s[10000010];
uint nxt()
int main()
for(int i = 1; i <= m; ++i)
std:
:cout<:
:endl;
}
根據相關理論, nxt()函式是隨機的。sample inputinput
7個數n,m,x0,x1,a,b,c
output
乙個數,即程式中的tot值
5 5 1 2 3 4 5
sample output
3818396440
sample input
10000000 10000000 555 888 777 666 12345
sample output
4134418848
10% n, m <= 1000談一談我的想法:40% n, m <= 100000
100% n <= 10000000, m <= 50000000
保證 x0, x1, a, b, c 在 unsigned int 範圍內
time limit: 4 sec
memory limit: 512 mb
初看這道題, 哦,求最小值帶修改,那直接線段樹啊。咦,等等,範圍 5e7,這怎麼辦,不管了先打一通,果然線段樹果然爆棧,完了完了我要爆在第一題了,講真說好的可以ak呢,但是這麼著急也不是辦法, 冷靜下來再看一看題,咦,等等, nxt 函式隨機啊(雖然是規則的隨機), 再算了算期望不大啊,好像可以暴力搞啊。於是打了打,大樣例只有 1.09 sec 很友善啊, 最後評測的時候雖然慢了一點,但還是過了。
簡單理一下 :
這道題呢時限開得很大, 給你乙個小小的暗示: 暴力, 記錄當前序列中的最小值,簡單維護: 如果當次操作改變的正好是當前的最小值,就對整個序列從頭到尾掃一遍,維護最小,如果不是修改的當前最小值, 就直接與當前最小值比較維護最小, 完了!!
考慮期望對於每次操作選擇序列中隨機的乙個數, 操作一共 5e7 次, 期望選中同乙個數為 m / n = 5, 所以不會 t 掉。
下面貼出**#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define uint unsigned int
using
namespace
std;
uint x0, x1, a, b, n, m, c;
uint now = 1, tot = 0;
uint s1[10000010];
uint nxt()
int main()
}else
if(s1[ps] < s1[o]) o = ps;
ans = s1[o];
now *= 10099;
tot += now * ans;
}cout
《本題結束
是不是要犒勞自己一曲**呢:still worth fighting for - my darkest days
border="0" width="330" height="86" src="">
NOIP模擬 三 T1 太空電梯
border 0 width 330 height 86 src 為了解決日漸增長的人口問題,mstdream 率領乙個小組到達火星開發新的居住地。地球到火星有一架太空電梯,電梯一次最多承載 2 個人,最大載重為 k,小組一共有 n 個人,第 i 個人重量為 vi 人們排成一隊等候上電梯。上電梯的規...
NOIP2017模擬 舉辦比賽
2017.8.27 t1 1946 樣例資料1 輸入5 5 1 2 3 4 5 輸出 樣例資料2 輸入10000000 10000000 555 888 777 666 12345 輸出 分析 第一次做這種隨機概率題 看到資料那麼大o n 的做法根本想不到就直接放棄了。結果就是個撞運氣的ffffff...
NOIP模擬(10 30)T1 比賽
比賽 題目背景 10.30 noip 模擬t1 分析 暴力 將資料從小到大排序,從大到小找到第乙個滿足 a i k a i 1 的位置,那麼答案就是 n i 了,如果找不到那麼就是 n了 注意邊界 source created by scarlyw include include include i...