2018年第九届省赛C/C++A组第4题——第几个幸运数
生活随笔
收集整理的這篇文章主要介紹了
2018年第九届省赛C/C++A组第4题——第几个幸运数
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
標(biāo)題:第幾個(gè)幸運(yùn)數(shù)
到x星球旅行的游客都被發(fā)給一個(gè)整數(shù),作為游客編號(hào)。
x星的國(guó)王有個(gè)怪癖,他只喜歡數(shù)字3,5和7。
國(guó)王規(guī)定,游客的編號(hào)如果只含有因子:3,5,7,就可以獲得一份獎(jiǎng)品。
我們來(lái)看前10個(gè)幸運(yùn)數(shù)字是:
3 5 7 9 15 21 25 27 35 45
因而第11個(gè)幸運(yùn)數(shù)字是:49
小明領(lǐng)到了一個(gè)幸運(yùn)數(shù)字 59084709587505,他去領(lǐng)獎(jiǎng)的時(shí)候,
人家要求他準(zhǔn)確地說(shuō)出這是第幾個(gè)幸運(yùn)數(shù)字,否則領(lǐng)不到獎(jiǎng)品。
請(qǐng)你幫小明計(jì)算一下,59084709587505是第幾個(gè)幸運(yùn)數(shù)字。
需要提交的是一個(gè)整數(shù),請(qǐng)不要填寫(xiě)任何多余內(nèi)容。
代碼
#include <iostream> #include <set> #define MAXN 59084709587505 using namespace std;set<long long> num; int a[3]={3,5,7}; int main() {long long number=1;while(1){for(int i = 0; i < 3; ++i){long long tt = number*a[i];if(tt <= MAXN) num.insert(tt);}number = *num.upper_bound(number);if(number == MAXN) break;}cout<<num.size()<<endl;return 0; }總結(jié)
以上是生活随笔為你收集整理的2018年第九届省赛C/C++A组第4题——第几个幸运数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2018年第九届省赛C/C++A组第3题
- 下一篇: 2018年第九届省赛C/C++A组第5题