-->

儿时谜语记录

谜面

  • 地上一杆枪,走来走去不敢趟(tāng);
  • 青树青棵,就地盘窝,我又不是什么仙桃仙果,为什么踮着脚够(gòu)我


其他的等我想起来再更新


谜底

  • 苍耳草

最好的时代

这是最好的时代

这个时代充满了美好


物内人群热闹,屋外鸟语花香

家庭美满幸福,邻里友好互助

亲戚相互祝福,朋友常常沟通

事业蒸蒸日上,经济欣欣向荣


当有一天下起了雪,也没有那该死的脚印去践踏

这是我们盼望中的纯洁


我们有幸见证伟大的时代

让我们一起赞美,这最美好的世界


我开心的回头找你

你为何在墙角哭泣?

知识的边界

 我是一个普通人,能观察到的也是普通人。

小孩子的快乐各不相同,学习却是通用的苦恼。

这里我突然想到一个问题,人所能达到的知识的边界在哪里?

如果一个智商正常的人,从出生开始学习,

而且一直对某一个领域进行研究,如此不断。


直至小孩子从出生到死亡也无法学习完关于这个领域的全部知识的时候

是不是边界就出现了?


如果是这样的话,知识的范围就好像一个限定范围的高斯球。

阶段性胜利

最近在找实习,感觉自己没有特别的优势,终于腾讯到了hr面还因为非全被打了回来。

我有时候就想,是不是我的运气太差,考研报考的时候哪一个选择变化的话都能考上全日制。

我又觉得这是上天的安排。


最后还是回归理性,是我准备的还不够,觉得差不多够了的时候就有些松懈,我文科和理科发展的也差距有些大。

理性告诉我,我应该更努力的学。

懒惰也催促我快些玩耍,放松。


我偶尔回忆经历过的一些小小的“成功”与“失败”。

我发现成功不过几年,失败也并不绝对。

现在有些焦虑,焦虑看不到后面的路。

虽然我知道,后面总有路。


全都是阶段性胜利和失败。

胜利的欢呼能振奋人心。

失败的沮丧别打垮你的信心。


祝你幸福,人们。

n的阶乘在m进制下末尾有多少零

 题目来源于CSDN,只是改编为Java版本

推荐看看简单版本:n的阶乘末尾有多少零


代码如下:

import java.util.Arrays;
import java.util.Scanner;

public class Main {

// 寻找的质数的范围,即 [2, maxn]
static int maxn = 10010;
// 存所有质数
static int[] prime;
static boolean[] isPrime;
// a存所求数的所有质因子
static int[] a;
// b存每个质因子的个数
static int[] b;
// num是maxn范围内素数的个数
static int num, cnt;

public static void init(){
a = new int[maxn+1];
b = new int[maxn+1];
prime = new int[maxn+1];
isPrime = new boolean[maxn+1];
num = 0;cnt = 0;

// 这里是寻找 maxn 以内的质数
Arrays.fill(isPrime, true);
for (int i = 2; i <= maxn; i++) {
if(isPrime[i]){
prime[num++] = i;
for (int j = i*i; j <= maxn; j+=i) {
isPrime[j] = false;
}
}
}
}

// 找到所有可疑的质数
private static void decom(int m){
cnt = 0;
for (int i = 0; i < num; i++) {
if(prime[i] > m) break;
int d = m;
while (d%prime[i] == 0){
a[cnt] = prime[i];
b[cnt]++;
d /= prime[i];
}
if(d < m)
cnt++;
}
}

// 计算 n! 里面有多少 x,比如8!里面有7个2
private static long cal(long n, long x){
if(n == 0 || n == 1){
return 0;
}
long answer = 0;
while(n != 0){
answer += n/x;
n /= x;
}
return answer;
}

private static long solve(long n, int m){
decom(m);
long answer = Long.MAX_VALUE;
for (int i = 0; i < cnt; i++) {
long t = cal(n, a[i]);
answer = Math.min(answer, t/b[i]);
}
return answer;
}

public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()){
String[] tmp = in.nextLine().split(" ");
long n = Long.parseLong(tmp[0]);
int m = Integer.parseInt(tmp[1]);
init();
System.out.println(solve(n,m));
}
}
}

特别说明

由于众所周知的原因,本博客以往文章的图片无法显示,请谅解。

标签

生活纪实 (192) 感想 (116) ingress (54) 软件 (49) 小诗 (35) 梦境 (28) 教程 (21) 科幻 (21) 体会 (20) 杭州 (11) blogger (5) wordpress (5) Google adsense (4) Google voice (3) Chrome (2) Tensorflow (1) 谷粉 (1)