【牛客网】X游戏
題目:X游戲
題目描述
我們稱一個(gè)數(shù) X 為好數(shù), 如果它的每位數(shù)字逐個(gè)地被旋轉(zhuǎn) 180 度后,我們?nèi)钥梢缘玫揭粋€(gè)有效的,且和 X 不同的數(shù)。要求每位數(shù)字都要被旋轉(zhuǎn)。
如果一個(gè)數(shù)的每位數(shù)字被旋轉(zhuǎn)以后仍然還是一個(gè)數(shù)字,?則這個(gè)數(shù)是有效的。0, 1, 和 8 被旋轉(zhuǎn)后仍然是它們自己;2 和 5 可以互相旋轉(zhuǎn)成對(duì)方;6 和 9 同理,除了這些以外其他的數(shù)字旋轉(zhuǎn)以后都不再是有效的數(shù)字。
現(xiàn)在我們有一個(gè)正整數(shù)?N, 計(jì)算從?1?到?N?中有多少個(gè)數(shù)?X 是好數(shù)?
輸入描述:
輸入正整數(shù)N輸出描述:
輸出1到N中好數(shù)個(gè)數(shù)示例1
輸入
10
輸出
4
說明
在[1, 10]中有四個(gè)好數(shù): 2, 5, 6, 9。 注意 1 和 10 不是好數(shù), 因?yàn)樗麄冊(cè)谛D(zhuǎn)之后不變。代碼:
#include <iostream> using namespace std;void solution(int nums) {int n = 0, count = 0, m;bool flag;for (int i = 0; i <= nums; ++i){m = i;flag = false;while (m){n = m % 10;if (n == 3 || n == 4 || n == 7)break;if (n == 6 || n == 9 || n == 2 || n == 5)flag = true;m /= 10;}if (m == 0 && flag == true){++count;// cout << i << endl;}}cout << count << endl; }int main() {int num;cin >> num;solution(num);return 0; }?
總結(jié)
- 上一篇: 极米z6x灯泡能换吗
- 下一篇: 3. 二进制中1的个数