洛谷P1590 失踪的7

news/2024/10/23 8:34:58/

题目描述

远古的Pascal人也使用阿拉伯数字来进行计数,但是他们又不喜欢使用7,因为他们认为7是一个不吉祥的数字,所以Pascal数字8其实表示的是自然数中的7,18表示的是自然数中的16。下面计算一下,在正整数n范围以内包含有多少个Pascal数字。

输入格式

第一行为正整数t,接下来t行,每行一个正整数n(≤2^32-1)。

输入的是Pascal数字

t \leq 10000t≤10000

输出格式

对于每个正整数n,输出n以内的Pascal数的个数。

输入输出样例

输入 #1复制

2
10
20

输出 #1复制

9
18
#include<stdio.h>
#include<iostream>
using namespace std;
#include<math.h>
/*思路:十进制中,1234 = 1*10^3 + 2*10^2 + 3*10^1 + 4*10^0,去掉了一个数字7,变成了9进制,模拟进制转换
注意点:因为处理的数据范围是(n≤2^32-1),所以说需要用到long long int类型来储存,为了防止出错,全部设为lld类型
*/
int main() 
{long long int num, n;//定义临时变量num和总数字ncin>>n;for (int i = 0; i < n; i++)//边读取边处理{cin>>num;long long int sum = 0, count = 0,temp;//每次处理前将相关数据重新定义,赋值while(num)//当num不为0的时候进行处理{temp = num % 10;//取num的最右边位数字(第一次取的是个位)if (temp < 7)//分支判断,决定计算公式sum += temp * pow(9, count);elsesum += (temp-1) * pow(9, count);num /= 10;//最右位的数字被处理后就舍去,倒数第二右位变成最右位count++;//指数自增}cout<<sum<<endl;//输出结果}return 0;
}


http://www.ppmy.cn/news/479041.html

相关文章

【力扣题解】1590. 使数组和能被 P 整除

&#x1f60a;博主目前也在学习&#xff0c;有错误欢迎指正&#x1f60a; &#x1f308;保持热爱 奔赴星海&#x1f308; 文章目录 一、题目1、题目描述2、基础框架3、原题链接 二、解题报告1、思路分析2、代码详解 三、本题知识 一、题目 1、题目描述 给你一个正整数数组 num…

洛谷题解P1590 失踪的7

P1590 失踪的7 题目描述 远古的Pascal人也使用阿拉伯数字来进行计数&#xff0c;但是他们又不喜欢使用7&#xff0c;因为他们认为7是一个不吉祥的数字&#xff0c;所以Pascal数字8其实表示的是自然数中的7&#xff0c;18表示的是自然数中的16。下面计算一下&#xff0c;在正整…

uva1590 ip地址

uva1590 ip地址 #include <iostream> #include <cstring> using namespace std; void erjin(int a,int p1,int p2,int ip[10005][32],int t) {int temp[8];for(int i7; i>0; i--){temp[7-i](a>>i)&1;}int j0;for(int ip1; i<p2; i){ip[t][i]temp[…

[LeetCode解题报告] 1590. 使数组和能被 P 整除

[LeetCode解题报告] 1590. 使数组和能被 P 整除 一、 题目1. 题目描述 二、 解题报告1. 思路分析2. 复杂度分析3. 代码实现 三、 本题小结四、 参考链接 一、 题目 1. 题目描述 给你一个正整数数组 nums&#xff0c;请你移除 最短 子数组&#xff08;可以为 空&#xff09;&…

UVa 1590 - IP Networks

题意 给出几个IP地址 找最小的范围使得输入全部包含在范围之中 输出该范围的最小IP地址和子网掩码 将ip地址和子网掩码看作二进制 子网掩码前32-n位均为1, 后n位为0 对应ip地址范围前32-n位相同, 后n位可以不同 AC代码 #include <iostream> #include <algorit…

uva 1590

十进制与二进制的转换, 简单题 但是刚写起来思路太乱, 改了好多遍, 所以写得比较丑, 仅供娱乐 #include <iostream> #include <cstdio> #include <cstdlib> #include <algorithm> #include <string> #include <cstring> #include <cm…

P1590 失踪的7

题目描述 远古的Pascal人也使用阿拉伯数字来进行计数&#xff0c;但是他们又不喜欢使用7&#xff0c;因为他们认为7是一个不吉祥的数字&#xff0c;所以Pascal数字8其实表示的是自然数中的7&#xff0c;18表示的是自然数中的16。下面计算一下&#xff0c;在正整数n范围以内包含…

1590. 使数组和能被 P 整除-哈希表法

1590. 使数组和能被 P 整除-哈希表法 给你一个正整数数组 nums&#xff0c;请你移除 最短 子数组&#xff08;可以为 空&#xff09;&#xff0c;使得剩余元素的 和 能被 p 整除。 不允许 将整个数组都移除。 请你返回你需要移除的最短子数组的长度&#xff0c;如果无法满足题…