第五屆B組藍橋杯決賽

2021-09-22 14:12:37 字數 4783 閱讀 7835

1

小明和他的表弟一起去看電影,有人問他們的年齡。

小明說:今年是我們的幸運年啊。

我出生年份的四位數字加起來剛好是我的年齡。

表弟的也是如此。已知今年是2023年,並且,小明說的年齡指的是周歲。

請推斷並填寫出小明的出生年份。

這是乙個4位整數,請通過瀏覽器提交答案,不要填寫任何多餘的內容

(比如,他表弟的出生年份,或是他們的年齡等等)

#includeusing namespace std;

int fun(int n)

return sum;

}int main()

int main()

else

k = next[k];

}return next;

}// da中搜尋pa, da的長度為an, pa的長度為pn

int find(int da, int an, int pa, int pn)

;int pa = ;

int n = find(da, sizeof(da)/sizeof(int), pa, sizeof(pa)/sizeof(int));

printf("%d\n", n);

return 0;

}注意:通過瀏覽器提交答案。只填寫缺少的內容,不要填寫任何多餘的內容(例如:說明性文字或已有符號)

答案:j = next[j]

x博士正在研究一種生物晶元,其邏輯密集度、

容量都遠遠高於普通的半導體晶元。

博士在晶元中設計了 n 個微型光源,每個光源操作一次就會改變其狀態,

即:點亮轉為關閉,或關閉轉為點亮。

這些光源的編號從 1 到 n,開始的時候所有光源都是關閉的。

博士計畫在晶元上執行如下動作:

所有編號為2的倍數的光源操作一次,也就是把 2 4 6 8 ... 等序號光源開啟

所有編號為3的倍數的光源操作一次, 也就是對 3 6 9 ... 等序號光源操作,

注意此時6號光源又關閉了。

所有編號為4的倍數的光源操作一次。

直到編號為 n 的倍數的光源操作一次。

x博士想知道:經過這些操作後,某個區間中的哪些光源是點亮的。

【輸入格式】

3個用空格分開的整數:n l r  (ll表示區間的左邊界,r表示區間的右邊界。

【輸出格式】

輸出1個整數,表示經過所有操作後,[l,r] 區間中有多少個光源是點亮的。

例如:輸入:

5 2 3

程式應該輸出:

2再例如:

輸入:10 3 6

程式應該輸出:

3資源約定:

峰值記憶體消耗 < 256m

cpu消耗  < 1000ms

分析:這道題目就是考察數的因數,根據測試用例10,3,6來看:

第一次:編號為2的燈操作,則 2 4 6 8 10開

第二次:編號為3的燈操作:則3,9開啟,6關閉

第三次:  編號為4的燈操作:則4,8關閉

第四次:編號為5的燈操作: 則5開,10關閉

第五次:編號為6的燈操作: 則6開

所以在[3,6]區間裡,3,5,6是開啟的故結果為3。

同時:我們發現  3的約數有:3;5的約束有5;6的約數有2,3,6

而其他關閉的燈裡面:4的約束有:2,4;9的約數有:3,9

故:當約數個數為奇數時,燈開,當約數個數為偶數時燈關閉。

哪些數的約數個數為偶數呢,完全平方數,所以我們只要排除在區間裡面的完全平方數,就能找到最終的結果了。

#include#includeusing namespace std;

typedef long long ll;

ll n,l,r;

bool is(ll n)

int main()

cout

人稱log大俠。

一天,log大俠的好友 drd 有一些整數序列需要變換,

log大俠正好施展法力...

變換的規則是: 對其某個子串行的每個整數變為:

[log_2 (x) + 1]  其中 表示向下取整,

就是對每個數字求以2為底的對數,然後取下整。

例如對序列 3 4 2 操作一次後,這個序列會變成 2 3 2。

drd需要知道,每次這樣操作後,序列的和是多少。

【輸入格式】

第一行兩個正整數 n m 。

第二行 n 個數,表示整數序列,都是正數。

接下來 m 行,每行兩個數 l r 表示 atm 這次操作的是區間 [l, r],

數列序號從1開始。

【輸出格式】

輸出 m 行,依次表示 atm 每做完乙個操作後,整個序列的和。

例如,輸入:

3 35 6 4

1 22 3

1 3程式應該輸出:108

6【資料範圍】

對於 30% 的資料, n, m <= 10^3

對於 100% 的資料, n, m <= 10^5

#includeusing namespace std;

typedef long long ll;

ll n,m;

ll arr[100001];

ll a[100001][2];

void dfs(int l,int r)

for(int i=0;i>a[i][0]>>a[i][1];

} for(int i=0;i帶著殖民擴張的野心,pear和他的星際艦隊登上x星球的某平原。

為了評估這塊土地的潛在價值,pear把它劃分成了m*n格,每個格仔上用乙個整數(可正可負)

表示它的價值。

pear要做的事很簡單——選擇一些格仔,占領這些土地,通過建立圍欄把它們和其它土地隔開。

對於m*n的格仔,一共有(m+1)*n+m*(n+1)條圍欄,即每個格仔都有上下左右四個圍欄;

不在邊界上的圍欄被相鄰的兩個格仔公用。大概如下圖【p1.png】所示。

圖中,藍色的一段是圍欄,屬於格仔1和2;紅色的一段是圍欄,屬於格仔3和4。

每個格仔有乙個可正可負的收益,而建圍欄的代價則一定是正的。

你需要選擇一些格仔,然後選擇一些圍欄把它們圍起來,

使得所有選擇的格仔和所有沒被選的格仔嚴格的被隔開。選擇的格仔可以不連通,也可以有「洞」,

即乙個連通塊中間有一些格仔沒選。注意,若中間有「洞」,那麼根據定義,

「洞」和連通塊也必須被隔開。

pear的目標很明確,花最小的代價,獲得最大的收益。

【輸入資料】

輸入第一行兩個正整數m n,表示行數和列數。

接下來m行,每行n個整數,構成矩陣a,a[i,j]表示第i行第j列格仔的價值。

接下來m+1行,每行n個整數,構成矩陣b,b[i,j]表示第i行第j列上方的圍欄建立代價。

特別的,b[m+1,j]表示第m行第j列下方的圍欄建立代價。

接下來m行,每行n+1個整數,構成矩陣c,c[i,j]表示第i行第j列左方的圍欄建立代價。

特別的,c[i,n+1]表示第i行第n列右方的圍欄建立代價。

【輸出資料】

一行。只有乙個正整數,表示最大收益。

【輸入樣例1】

3 365 -6 -11

15 65 32

-8 5 66

4 1 6

7 3 11

23 21 22

5 25 22

26 1 1 13

16 3 3 4

6 3 1 2

程式應當輸出:

123【輸入樣例2】

6 672 2 -7 1 43 -12

74 74 -14 35 5 3

31 71 -12 70 38 66

40 -6 8 52 3 78

50 11 62 20 -6 61

76 55 67 28 -19 68

25 4 5 8 30 5

9 20 29 20 6 18

3 19 20 11 5 15

10 3 19 23 6 24

27 8 16 10 5 22

28 14 1 5 1 24

2 13 15 17 23 28

24 11 27 16 12 13 27

19 15 21 6 21 11 5

2 3 1 11 10 20 9

8 28 1 21 9 5 7

16 20 26 2 22 5 12

30 27 16 26 9 6 23

程式應當輸出

870【資料範圍】

對於20%的資料,m,n<=4

對於50%的資料,m,n<=15

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

a、b、c陣列(所有的涉及到的格仔、圍欄輸入資料)絕對值均不超過1000。根據題意,a陣列可正可負,b、c陣列均為正整數。

資源約定:

峰值記憶體消耗 < 256m

cpu消耗  < 3000ms

請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入...」 的多餘內容。

所有**放在同乙個原始檔中,除錯通過後,拷貝提交該原始碼。

注意: main函式需要返回0

注意: 只使用ansi c/ansi c++ 標準,不要呼叫依賴於編譯環境或作業系統的特殊函式。

注意: 所有依賴的函式必須明確地在原始檔中 #include , 不能通過工程設定而省略常用標頭檔案。

提交時,注意選擇所期望的編譯器型別。

藍橋杯第五屆決賽B組

小明和他的表弟一起去看電影,有人問他們的年齡。小明說 今年是我們的幸運年啊。我出生年份的四位數字加起來剛好是我的年齡。表弟的也是如此。已知今年是2014年,並且,小明說的年齡指的是周歲。請推斷並填寫出小明的出生年份。這是乙個4位整數,請通過瀏覽器提交答案,不要填寫任何多餘的內容 比如,他表弟的出生年...

第五屆藍橋杯決賽做題報告

第五屆藍橋杯決賽做題報告 此次比賽是我本人第一次參加全國性的程式設計比賽,比賽結果 全國c c b 組二等獎。做題情況 寫了前 5題,程式設計大題可能部分測試資料沒過,最後一題,寫了乙個多小時,當時想到用寬搜,就一直寫了下去,沒有想其他的方法,結果,寫完後題目給的測試資料都沒過,此時比賽也接近了尾聲...

第五屆藍橋決賽記

首先非常感謝老師,學院為我們付出的辛苦,有幸能夠獲得省賽一等進入決賽,學院出了巨大的資金支援我們去北京比賽,這次比賽我雖然沒有拿到一等獎,但我收穫了頗多經驗,得了三等,就像老師說的,大一不用著急,我有大把時間。但我想大把時間是有,可不能隨便拿來浪費。下邊來講講題目,考試時我發現前5題十分簡單,不過我...