豆豆最近思考计算机为什么要使用二进制的时候,突然想到为什么不使用三进制呢。三进制明显更适合人类思维。毕竟三进制可以表示事物的三种状态(真,假,未知)
三进制是以3为基数的进制。和二进制一样,三进制的数位,称为三进制位(trit),通常,三进制中使用0、1、2三个数字。
n!末尾有多少个0这样的问题对于豆豆来说是非常简单的。豆豆突然想到那么n!转换成3进制后,末尾有多少个0呢?
标签:输出 状态 适合 事物 return 多少 while stdio.h 整数
豆豆的三进制计算机
时间限制: 1 Sec 内存限制: 128 MB
豆豆最近思考计算机为什么要使用二进制的时候,突然想到为什么不使用三进制呢。三进制明显更适合人类思维。毕竟三进制可以表示事物的三种状态(真,假,未知)
三进制是以3为基数的进制。和二进制一样,三进制的数位,称为三进制位(trit),通常,三进制中使用0、1、2三个数字。
n!末尾有多少个0这样的问题对于豆豆来说是非常简单的。豆豆突然想到那么n!转换成3进制后,末尾有多少个0呢?
一个整数n
1<=n<=1018
(多组数据)
输出n!转换成3进制后,末尾0的个数
3
1
#include <stdio.h> int main () { long long n; while(~scanf("%lld", &n)) { long long sum = 0; long long tmp = 3; while (n >= tmp) { sum += (n / tmp); tmp *= 3; } printf("%lld\n", sum); } return 0; }
标签:输出 状态 适合 事物 return 多少 while stdio.h 整数
原文地址:http://www.cnblogs.com/jxust-jiege666/p/6512342.html