十六屆金馬五校 I 二數

2021-08-18 21:15:14 字數 983 閱讀 2117

我們把十進位制下每一位都是偶數的數字叫做「二數」。

小埃表示自己很聰明,最近他不僅能夠從小數到大:2,3,4,5....,也學會了從大數到小:100,99,98...,他想知道從乙個數開始數最少的數就得到乙個二數。但是聰明的小森已經偷偷在心裡算好了小埃會數到哪個二數,請你求出他要數到哪個數吧。

換句話說,給定乙個十進位制下最多10

5位的數字,請你求出和這個數字的差的絕對值最小的二數,若答案不唯一,輸出最小的那個。

也就是說,給定數字n,求出m,使得abs(n-m)最小且m[i] mod 2 = 0

1 ≤ t ≤ 100, 1 ≤ n ≤ 10100000 − 1, t組資料的數字的十進位制表示長度總和不超過1000000
每行乙個整數 m 第 i 行表示第 i 個數所對應的「最鄰近二數」
示例1

5

4211

12018

13751

4280

2020

8888

題解:很顯然第一位不是偶數的數要麼+1,要麼-1,如果為9只能減1,那麼問題就是如果判斷第一位奇數+1還是-1,我們發現x4444這種數是個分界線,x444變成(x+1)000和(x-1)888結果一樣,所以模擬下即可。

#include using namespace std;

typedef long long ll;

const int n = 1e5 + 7;

char s[n];

int main()

if(t == 9)

bool ok = 1;

for(int j = i + 1;j <= n;j ++)

}if(ok)

else

} else

}if((int)res.size() == 1) else

}return 0;

}

第十六屆金馬五校 B

在埃森哲,員工培訓是最看重的內容,最近一年,我們投入了 9.41 億美元用於員工培訓和職業發展。截至 2018 財年末,我們會在全球範圍內設立 100 所互聯課堂,將互動科技與創新內容有機結合起來。按崗培訓,按需定製,隨時隨地,本土化,區域化,虛擬化的培訓會讓你快速取得成長。小埃希望能通過培訓學習更...

2017金馬五校賽 K 購買裝備(二分)

題目傳送門 思路 題目要求在最多裝備的基礎上屬性值最小值要最大,典型的求最大化最小值問題。這裡求最多裝備數量是簡單的,接著就是二分答案求最大化最小屬性值。在這mark了一下,可以去看看這篇文章傳送門關於提高cin cout的效率 分別是scanf 加速後的cin 普通cin,效果還是挺明顯的。下面是...

埃森哲杯金馬五校賽 L K序列

時間限制 c c 1秒,其他語言2秒 空間限制 c c 131072k,其他語言262144k 64bit io format lld 給乙個陣列 a,長度為 n,若某個子串行中的和為 k 的倍數,那麼這個序列被稱為 k 序列 現在要你 對陣列 a 求出最長的子串行的長度,滿足這個序列是 k 序列。...