#include <iostream>
using namespace std;
unsigned long long countOneNum(unsigned long long N);
int main(){
unsigned long long n=123;
cout<<"-----------Start Count N:"<<n<<" One Numbers------------"<<endl;
unsigned long long result=countOneNum(n);
cout<<"-----------One Numbers: "<<result<<"------------"<<endl;
getchar();
}
unsigned long long countOneNum(unsigned long long n){
unsigned long long highNum=1;
unsigned long long midNum=0;
unsigned long long lowNum=0;
unsigned long long count=0;
unsigned long long factor=1;
while(highNum>0){
highNum=n/(factor*10);
lowNum=n%factor;
midNum=n/factor%10;
switch (midNum){
case 0:
count+=highNum*factor;
break;
case 1:
count+=highNum*factor+lowNum+1;
break;
default:
count+=(highNum+1)*factor;
}
factor*=10;
}
return count;
}
很有意思的东西
分享到:
相关推荐
54<br><br>0075 用回溯法找出n个自然数中取r个数的全排列 55<br><br>0076 约瑟夫环问题 56<br><br>0077 猴子选大王 57<br><br>0078 如何判断IP是否正确 57<br><br>0079 如何将小写金额转换为大写金额 57...
cout << "The size of a short int is:\t" << sizeof(short) << " bytes.\n"; cout << "The size of a long int is:\t" << sizeof(long) << " bytes.\n"; cout << "The size of a char is:\t\t" << sizeof(char) << ...
添加服务到系统服务列表中,可以使用`systemctl enable <service-name>.service`命令。 ##### 7.2 删除一个服务 从系统服务列表中删除服务,可以使用`systemctl disable <service-name>.service`命令。 ##### 7.3 ...
- 使用 `dpkg -S <file>` 命令可以找出某个文件是哪个软件包的一部分。 **1.4 查询软件依赖哪些包** - 使用 `apt show <package> | grep Depends` 命令可以看到软件的依赖关系。 **1.5 查询软件被哪些包依赖** - ...
这样使攻击者除了用穷举攻击以外,找不到其他简洁的数学破译方法。 6. DES是一个分组密码算法,它使用56位的密钥,以64位(一个分组)为单位对数据分组进行加/解密,密文与明文长度相同均为64位。 四、密码体制 7....
3. 比较工作效率:通过计算每人每天制作贺卡的个数可以判断谁的制作速度最快。 4. 比较两段绳子长度:一段是全长的1/3,一段是全长的2/3,显然第二段比第一段长。 5. 最小公倍数与自然数和的关系:两个相邻自然数的...
1. **超过一半的数字**:这个问题要求找出数组中出现次数超过一半的元素,可以采用摩尔投票法,通过两两抵消的方式快速找到多数元素。 2. **调整数组顺序**:将数组中的奇数移动到偶数前面,同时保持它们之间的相对...
**试题**: 写一个函数`f(n)`,返回0到n之间出现的"1"的个数。 **知识点**: - **计数算法**:统计特定字符出现的次数。 ### 题目十六:静态函数与普通函数的区别 **试题**: static函数与普通函数有什么区别? **...
程序的目标是找到这n个数中出现次数最多的数,如果有多个数出现次数相同且最多,我们则选择其中最小的那个数。 代码的实现过程可以分为以下几个步骤: 1. 输入数的个数n:通过`do...while`循环确保用户输入的n在...
如果从根结点开始,按层次(每一层从左到右)用自然数1,2,……,n给结点进行编号,则对于编号为k(k=1,2,……,n)的结点有以下结论: ① 若k=1,则该结点为根结点,它没有父结点;若k>1,则该结点的父结点编号...
`=COUNTIFS(N1:N10, "Yes", O1:O10, ">50")` 当N列是"Yes"且O列大于50时,统计满足条件的行数。 9. **DATE函数**:创建日期。`=DATE(年份, 月份, 日)` 如 `=DATE(2022, 1, 1)` 返回2022年1月1日的日期。 10. **...
众数是一组数据中出现次数最多的数值。为了找到众数,我们需要记录每个数值出现的频率,并找出出现次数最多的那个。Java代码实现如下: ```java public static void mode(int[] s, int n) { int m = 0, k = 0, i =...
10. **位操作**:`x=x&(x-1)`是常见的位操作,用于清除x的最低位1,通常用于计数二进制表示中1的个数。 11. **数组索引**:`*(p[0]+1)`访问的是数组第二个元素的值,即4。 12. **逻辑推理**:7公斤米和砝码的问题...
`=COUNTIFS(N1:N50, "Yes", O1:O50, ">50")` 统计同时满足N列是"Yes"且O列大于50的单元格数量。 9. **CONCATENATE或CONCAT函数**:连接两个或多个文本字符串。`=CONCATENATE(P1, " ", Q1)` 或`=CONCAT(P1, " ", Q1)...
把“调用<Connect And Sign-On>”的测试步骤调整到第一步 查看需求覆盖率 -- Linking Requiremnets to a Test 将需求链接到测试Cruise Booking 注:由于Cruise Booking的测试是由Cruise Booking的需求转化而成...
if (n > 2 && isPrime[n - 1]) count++; return count; } ``` 这段代码首先初始化一个布尔数组isPrime,表示每个数是否是质数。然后,从2开始遍历,每次找到一个质数i,就将它的倍数标记为非质数。最后,统计...
该题目要求编写函数fun(),它的功能是求出1到1000 之内能被7或11整除,但不能同时被7和11整除的所有整数,并将它们放在a所指的数组中,通过n返回这些数的个数。函数的实现过程中使用了for循环来遍历1到1000之间的...
例如,对于B2到B11的数据范围,手工输入`=MODE(B2:B11)`或通过函数导入法("插入" -> "函数" -> "统计" -> "MODE")来找出众数。 2. **中位数**:中位数是将数据排序后位于中间位置的数值。可以使用`MEDIAN`函数,...
13. 数组中出现次数超过一半的数字:这涉及到排序算法和计数排序算法,以及如何处理大数据量的排序。 14. 数组中只出现一次的两个数,而其他数都出现两次:这可以利用位运算中的异或操作来解决。 15. 找出最小的K...
- **统计数字9的个数**:遍历1到100之间的每个数字,检查每一位是否为9。 - **求阶乘**:使用循环或递归来计算阶乘。 - **求素数**:检查100以内的所有数字,找出其中的素数。 - **求完数**:找出所有因子的和等于...