想說剛進div.1 ,先打場Educational Round試試手感。結果16min之後就沒再傳code了...
Problems :
pA : http://codeforces.com/contest/710/problem/A
pB : http://codeforces.com/contest/710/problem/B
pC : http://codeforces.com/contest/710/problem/C
pD : http://codeforces.com/contest/710/problem/D
pE : http://codeforces.com/contest/710/problem/E
pF : http://codeforces.com/contest/710/problem/F
My solutions :
pA : http://codeforces.com/contest/710/submission/20047572
pB : http://codeforces.com/contest/710/submission/20048663
pC : http://codeforces.com/contest/710/submission/20051573
pE : http://codeforces.com/contest/710/submission/20142269
題解:
pA :
題目大意:給你一個在西洋棋盤上面的格子,請輸出如果那個格子擺的是King(國王),他可以走幾步。
基本上可以分三種case : 四個角,邊,中間。判斷方法可以用第一個是'a', 'h'或第二個是 '1','8'等判斷,詳細可以參考我的code。
pB :
題目大意:一個長度n的a序列(1<=n<=3*10^5),請找出最小的點x,使得|a1-x|+|a2-x| + ... + |an-x|有最小值,如果x有很多解,請輸出最左邊的。
這個比較算是數學解:把a排序,然後輸出中間的點即可。這個算是絕對值圖形的特性。
pC :
題目大意:給你一個奇數n(1<=n<=49),請製造出一個n*n的矩陣,使得每一行、列、斜邊的和都是奇數。
Jury的解法大概是圖片(一)的樣子,我的解法是:讓每個行、列、斜邊的和都一樣。
圖一:
pE :
題目大意:現在你需要作出n個'a' (1<=n<=10^7),其中你可以使用三種操作:再任意處插入、刪除一個'a',這花費了a元、複製貼上目前的字串,這花費'b'元。請求出最小的花費。
這是一題dp題:令dp[i]代表說:有i個'a'的最佳解。則初始化條件為dp[1] = a,遞迴式為:若i%2==0,則dp[i] = max(dp[i-1] + a, dp[i/2] + b) else : dp[i] = max(dp[i-1]+a,max(dp[i/2]+b+a,dp[i/2+1] + b
沒有留言:
張貼留言