HDU 1492 The number of divisors(约数) about Humble Numbers
生活随笔
收集整理的這篇文章主要介紹了
HDU 1492 The number of divisors(约数) about Humble Numbers
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
The number of divisors(約數) about Humble Numbers
Time Limit: 2000/1000 MS (Java/Others)????Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1741????Accepted Submission(s): 852
Problem Description A number whose only prime factors are 2,3,5 or 7 is called a humble number. The sequence 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 24, 25, 27, ... shows the first 20 humble numbers.
Now given a humble number, please write a program to calculate the number of divisors about this humble number.For examle, 4 is a humble,and it have 3 divisors(1,2,4);12 have 6 divisors.
Input The input consists of multiple test cases. Each test case consists of one humble number n,and n is in the range of 64-bits signed integer. Input is terminated by a value of zero for n. Output For each test case, output its divisor number, one line per case. Sample Input 4 12 0 Sample Output 3 6 Author lcy Source “2006校園文化活動月”之“校慶杯”大學生程序設計競賽暨杭州電子科技大學第四屆大學生程序設計競賽 Recommend LL 排列組合求約數個數
#include <iostream> #include <map> #include <stdio.h> #include <math.h> #include <string.h> #include <stdlib.h> #include <algorithm> using namespace std; int main() {__int64 n;__int64 rc[4];int p[4]={2,3,5,7};while(scanf("%I64d",&n),n){for(int i=0;i<4;i++){rc[i]=1;if(n%p[i]==0)while(n%p[i]==0) {n/=p[i];rc[i]++;}}printf("%I64d\n",rc[0]*rc[1]*rc[2]*rc[3]);}return 0; }
轉載于:https://www.cnblogs.com/372465774y/archive/2012/10/20/2732386.html
總結
以上是生活随笔為你收集整理的HDU 1492 The number of divisors(约数) about Humble Numbers的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成员变量的声明位置引起编译错误
- 下一篇: Could not find a ver