湖南省2017省賽A題

2021-08-07 19:17:18 字數 741 閱讀 7162

題目大意,給你n個數,要求你給出任意乙個排列,要求乙個數與左右的數的差值的絕對值大小大於d。

直接遞推,設第乙個數為a,則第二個數顯然最大為n,那麼可以推出a = n -  d - 1,第三個數為a - 1,第四個數為a + d。

以此可遞推出第i個數大小為,分奇偶性,i為奇數時,其為a - (i - 1) / 2,偶數時,a + d - (i - 4) / 2。

考慮到一點,這樣遞推保證了奇數字的數不同,偶數字的數不同,但可能出現如下情況:

a - (i - 1) / 2 = a +d-(j - 4) / 2,此時d = (j - i - 3) / 2,此時只需d = 1,n= 6,i為1,j為6時,第1個數和第6個數都為4,顯然這會出現重複的情況,

由於n個數存在這樣的排列方式時,d是有限制的,可以容斥證明,d最大為 n / 2 - 1,那麼對於d更小的情況,我們便只要找出最大的d滿足的排列方式即可。

那麼此時我們再回到遞推式,當n為奇時,有n / 2 + 1個奇數,此時,由於i為奇數時,其值時不斷減小,那麼我們就要保證第n個數為1,由於存在n / 2 + 1個

數,那麼按照遞推式,第n個數必定為a - n / 2,且保證a - n / 2 = 1,那麼a = n / 2 + 1,n為偶數時,有n / 2個奇數,此時我們要保證第n - 1個數為1,

那麼就相當於,a - n / 2 + 1 = 1,a = n / 2,由此我們可以分類討論,當d >= n / 2時,直接輸出-1,否則把d = n / 2 - 1,然後直接遞推即可。

2018湖南省賽總結

2018湖南省賽總結 省賽銅牌,有點可惜,被乙個打表題卡了三個小時。其實這題完全可以早點出的。寫一下省賽比賽的心路歷程吧。這個對以後的比賽有用。9點比賽,8.55發的題面。發完題面之後,立馬發現a題是簽到題,立馬丟給zqg寫,很快一發a了a題,之後的題都沒有那麼明顯的簽到,讀完b題之後,和隊友說題意...

12屆湖南省賽 F 地鐵

problem f 地鐵 time limit 5 sec memory limit 128 mb submit 84 solved 8 submit status web board description bobo 居住在大城市 icpccamp。icpccamp 有 n 個地鐵站,用 1,2,...

ACM2016湖南省賽2016

time limit 5 sec memory limit 128 mb submit 339 solved 206 submit status web board 給出正整數 n 和 m,統計滿足以下條件的正整數對 a,b 的數量 1.1 a n,1 b m 2.a b 是 2016 的倍數。輸入...