第六屆藍橋杯B組C/C++_獎券數目
阿新 • • 發佈:2019-01-08
獎券數目
有些人很迷信數字,比如帶“4”的數字,認為和“死”諧音,就覺得不吉利。
雖然這些說法純屬無稽之談,但有時還要迎合大眾的需求。某抽獎活動的獎券號碼是5位數(10000-99999),
要求其中不要出現帶“4”的號碼,主辦單位請你計算一下,如果任何兩張獎券不重號,最多可發出獎券多少張。
請提交該數字(一個整數),不要寫任何多餘的內容或說明性文字。
.後天比賽了,再刷一波!這一題沒什麼難度,直接用的暴力,但是細細想一想,寫判斷的時候還是出了點問題。做演算法題目數學真的好重要哈,根本不需要寫啥程式碼,一個簡單的排列組合就出來了:8*9*9*9*9=52488!
.
/*10000-99999*/ #include<iostream> using namespace std; bool Ju(int i) { int temp; while (i>0) { temp = i % 10;//這裡就理解錯了不應該是 i % 4 !!! i /= 10; if (temp == 4) { return 0; break; } } return 1;//符合條件的話就返回1 } int main() { int account = 0; for (int i = 10000; i <= 99999; i++) {//數字99999寫成9999了 if (Ju(i)) { account++; } } cout << account << endl; return 0; }
.
.
.
.
.
.