时间限制: 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; }
时间: 2024-10-20 14:31:49