1、獎券數目
有些人很迷信數字,比如帶「4」的數字,認為和「死」諧音,就覺得不吉利。
雖然這些說法純屬無稽之談,但有時還要迎合大眾的需求。某**活動的獎券號碼是5位數(10000-99999),要求其中不要出現帶「4」的號碼,主辦單位請你計算一下,如果任何兩張獎券不重號,最多可發出獎券多少張。
請提交該數字(乙個整數),不要寫任何多餘的內容或說明性文字。
#includeusing namespace std;
int main()
for(b=0;b<10;b++)
for(c=0;c<10;c++)
for(d=0;d<10;d++)
for(e=0;e<10;e++)
else}}
}} }
printf("%d\n",sum);
return 0;
}答案:52488
其實直接用數學算,來的更快。
2、星系炸彈
在x星系的廣袤空間中漂浮著許多x星人造「炸彈」,用來作為宇宙中的路標。
每個炸彈都可以設定多少天之後**。
比如:阿爾法炸彈2023年1月1日放置,定時為15天,則它在2023年1月16日**。
有乙個貝塔炸彈,2023年11月9日放置,定時為1000天,請你計算它**的準確日期。
請填寫該日期,格式為 yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19
請嚴格按照格式書寫。不能出現其它文字或符號。
直接用excel或者呼叫c++中的時間函式。
3、三羊獻瑞
觀察下面的加法算式:
祥 瑞 生 輝
+ 三 羊 獻 瑞
-------------------
三 羊 生 瑞 氣
(如果有對齊問題,可以參看【圖1.jpg】)
其中,相同的漢字代表相同的數字,不同的漢字代表不同的數字。
請你填寫「三羊獻瑞」所代表的4位數字(答案唯一),不要填寫任何多餘內容。
#includeusing namespace std;
int main()
for(sheng=0;sheng<10;sheng++)
for(hui=0;hui<10;hui++)
for(san=1;san<10;san++)
for(yang=0;yang<10;yang++)
for(xian=0;xian<10;xian++)
for(qi=0;qi<10;qi++)
else}}
}}}}
}} }
return 0;
}
果斷暴力,但是,如果用c++中的next_permutation()很大大的節省你的時間。
其實,像這種,關鍵是判重。我個人覺得,最有效防止重複的方法是:
加乙個全域性的int visited;
6、加法變乘法
我們都知道:1+2+3+ ... + 49 = 1225
現在要求你把其中兩個不相鄰的加號變成乘號,使得結果為2015
比如:1+2+3+...+10*11+12+...+27*28+29+...+49 = 2015
就是符合要求的答案。
請你尋找另外乙個可能的答案,並把位置靠前的那個乘號左邊的數字提交(對於示例,就是提交10)。
注意:需要你提交的是乙個整數,不要填寫任何多餘的內容。
#includeusing namespace std;
int main()
;int main()
if(j-2>=0)
if(j-3>=0)
if(j-4>=0)
dp[i][j]=dp[i-1][j]+dp[i][j];
} }printf("%d\n",dp[13][13]);
return 0;
}*///狀態是:dp[i][j]代表,i牌,在j張牌的時候的乙個個數。
//狀態轉移: 選擇0,1,2,3,4;(每張牌)。------不要忘記考慮0。即不選擇的重要性。
//也正因為此,其實也可以遞迴式的列舉。因為,每個階段是選擇0,1,2,3,4
8、移動距離
x星球居民小區的樓房全是一樣的,並且按矩陣樣式排列。其樓房的編號為1,2,3...
當排滿一行時,從下一行相鄰的樓往反方向排號。
比如:當小區排號寬度為6時,開始情形如下:
1 2 3 4 5 6
12 11 10 9 8 7
13 14 15 .....
我們的問題是:已知了兩個樓號m和n,需要求出它們之間的最短移動距離(不能斜線方向移動)
輸入為3個整數w m n,空格分開,都在1到10000範圍內
w為排號寬度,m,n為待計算的樓號。
要求輸出乙個整數,表示m n 兩樓間最短移動距離。
例如:使用者輸入:
6 8 2
則,程式應該輸出:
4再例如:
使用者輸入:
4 7 20
則,程式應該輸出:
5資源約定:
峰值記憶體消耗 < 256m
cpu消耗 < 1000ms
請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入...」 的多餘內容。
所有**放在同乙個原始檔中,除錯通過後,拷貝提交該原始碼。
注意: main函式需要返回0
注意: 只使用ansi c/ansi c++ 標準,不要呼叫依賴於編譯環境或作業系統的特殊函式。
注意: 所有依賴的函式必須明確地在原始檔中 #include , 不能通過工程設定而省略常用標頭檔案。
注: 簡單的模擬題。
9、壘骰子
賭聖atm晚年迷戀上了壘骰子,就是把骰子乙個壘在另乙個上邊,不能歪歪扭扭,要壘成方柱體。
經過長期觀察,atm 發現了穩定骰子的奧秘:有些數字的面貼著會互相排斥!
我們先來規範一下骰子:1 的對面是 4,2 的對面是 5,3 的對面是 6。
假設有 m 組互斥現象,每組中的那兩個數字的面緊貼在一起,骰子就不能穩定的壘起來。
atm想計算一下有多少種不同的可能的壘骰子方式。
兩種壘骰子方式相同,當且僅當這兩種方式中對應高度的骰子的對應數字的朝向都相同。
由於方案數可能過多,請輸出模 10^9 + 7 的結果。
不要小看了 atm 的骰子數量哦~
「輸入格式」
第一行兩個整數 n m
n表示骰子數目
接下來 m 行,每行兩個整數 a b ,表示 a 和 b 數字不能緊貼在一起。
「輸出格式」
一行乙個數,表示答案模 10^9 + 7 的結果。
「樣例輸入」
2 11 2
「樣例輸出」
544「資料範圍」
對於 30% 的資料:n <= 5
對於 60% 的資料:n <= 100
對於 100% 的資料:0 < n <= 10^9, m <= 36
資源約定:
峰值記憶體消耗 < 256m
cpu消耗 < 2000ms
請嚴格按要求輸出,不要畫蛇添足地
列印類似:「請您輸入...」 的多餘內容。
所有**放在同乙個原始檔中,除錯通過後,拷貝提交該原始碼。
注意: main函式需要返回0
注意: 只使用ansi c/ansi c++ 標準,不要呼叫依賴於編譯環境或作業系統的特殊函式。
注意: 所有依賴的函式必須明確地在原始檔中 #include , 不能通過工程設定而省略常用標頭檔案。
提交時,注意選擇所期望的編譯器型別。
#include#define max 1000000000+9
using namespace std;
int edge[7][7]=;
int b[7];
int sum=0;
void dfs(int n,int k,int i);
int main()
return;
} else
}}}
我們從分析中,發現就是簡單的樹的分支。 2023年藍橋杯B組C C 決賽題解
三重迴圈 列舉a,b,c的值,如果滿足兩個條件 3個a 7個b 1個c 15 4個a 10個b 1個c 420 就是一組合法的解。輸出a b c就是答案 一開始以為很難,看了題解 都是用dfs暴力搜出來的 國賽第二題永遠是用dfs解決。下面部落格dfs的很完美啊!參考部落格 思路 dfs x,y 正...
2015藍橋杯b組
如果x的x次冪結果為10 參見 圖1.png 你能計算出x的近似值嗎?顯然,這個值是介於2和3之間的乙個數字。請把x的值計算到小數後6位 四捨五入 並填寫這個小數值。注意 只填寫乙個小數,不要寫任何多餘的符號或說明。include include include include include de...
藍橋杯2015B組C
1 獎券數目 題目 有些人很迷信數字,比如帶 4 的數字,認為和 死 諧音,就覺得不吉利。雖然這些說法純屬無稽之談,但有時還要迎合大眾的需求。某 活動的獎券號碼是5位數 10000 99999 要求其中不要出現帶 4 的號碼,主辦單位請你計算一下,如果任何兩張獎券不重號,最多可發出獎券多少張。請提交...