首页 > 编程语言 >Java俱乐部社团面试记录

Java俱乐部社团面试记录

时间:2022-10-07 22:14:14浏览次数:91  
标签:Java int Big ++ long 面试 ans 社团 dp

Java俱乐部社团面试记录

1.申请表

自身能拿出手的太少了,能写在申请表上的除了自己的热情,近乎没有,该打打大大小小的比赛了

2.个人介绍

自己过于紧张,一进门脑子只剩空气了

3.询问个人情况

知识面拓展有点少,问了两个还是三个不知道的名词,且没有将自己的优势展示出来

问:你如果加入俱乐部,每周能拿出多少时间出来呢

答:只要不上课都可以

其实,我现在是这么想的(在回答完之后),学校课程大部分没那么重要,重点在于自己是否认真学习,我的休闲娱乐活动基本只有刷视频,甚至可以每天抽出12个小时。

4.编程题

给了四道编程题,都是leetcode原题,基本都是简单题,交上去回到宿舍之后在leetcode上写都是通过,但是当时的时候实在脑抽,思维完全跟不上私下写题

提交不能得到分数,类似OI赛事

虽然是leetcode原题,但是他没有给leetcode样式的提交类,导致我是写的输入输出,不知道能不能得分

第一题

2119. 反转两次的数字 - 力扣(LeetCode)

这个题可以算是竞赛中的签到题,只需要判断最后一位是否为为0即可,注意特判当这个数为0时的值

第二题

172. 阶乘后的零 - 力扣(LeetCode)

一眼质因子分解,怪自己的数论能力太差,场上只想到了统计5的个数,不知道怎么继续算了,最后只写了个O(n)的算法,且会longlong溢出

//错解
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    int ans = 0;
    long long now = 1;
    for (int i = 1; i <= n; ++i) {
        now *= i;
        while (now % 10 == 0) ++ans, now /= 10;
    }
    cout << ans << endl;
    return 0;
}

正解

[1,n] 中质因子 p 的个数为\(\sum_{k=1}^{\infty} \Big\lfloor\dfrac{n}{p^k}\Big\rfloor\) 而 \(\Big\lfloor\dfrac{n}{p^k}\Big\rfloor=\Big\lfloor\dfrac{\dfrac{n}{p^{k-1}}}{p}\Big\rfloor\)

所以对n每次除以p累加即可

#include <bits/stdc++.h>
using namespace std;
int main() {
    int n;
    cin >> n;
    int ans = 0;
    while (n) ans += n /= 5;
    cout << ans << endl;
    return 0;
}

第三题

64. 最小路径和 - 力扣(LeetCode)

入门dp题,不过由于场上没给leetcode式的class类,导致不知道他给不给变量m和n,就这样吧

#include <bits/stdc++.h>
using namespace std;
int main() {
    int m, n;
    cin >> m >> n;
    vector<vector<int>> dp(m, vector<int>(n));
    for (int i = 0; i < m; ++i)
        for (int j = 0; j < n; ++j) cin >> dp[i][j];
    for (int i = 1; i < n; ++i) dp[0][i] += dp[0][i - 1];
    for (int i = 1; i < m; ++i) dp[i][0] += dp[i - 1][0];
    for (int i = 1; i < m; ++i)
        for (int j = 1; j < n; ++j)
            dp[i][j] += min(dp[i - 1][j], dp[i][j - 1]);
    cout << dp[m - 1][n - 1] << endl;
    return 0;
}

第四题

50. Pow(x, n) - 力扣(LeetCode)

非常简单的快速幂放在了最后一道,可是我不知道的是int类型的最小值取绝对值会超int范围,真·不开longlong见祖宗

#include <bits/stdc++.h>
using namespace std;
double qpow(double x, long long n) {
    double ans(1);
    for (long long b = abs(n); b; b >>= 1, x = x * x)
        if (b & 1) ans = x * ans;
    return n < 0 ? 1.0 / ans : ans;
}
int main() {
    double x;
    long long n;
    cin >> x >> n;
    cout << qpow(x, n) << endl;
    return 0;
}

5.总结

  • 搞得稀碎
  • 菜菜菜
  • 多练

标签:Java,int,Big,++,long,面试,ans,社团,dp
From: https://www.cnblogs.com/Cattle-Horse/p/16767285.html

相关文章

  • 【算法篇】总结了四种链表,单链表,双向链表,循环链表,双向循环链表,顺手刷了两道面试题
    今日目录:1:能够说出链表的存储结构和特点2:能够说出链表的几种分类及各自的存储结构3:能说出链表和数组的差异4:完成实战演练题目5:完成综合案例1、概念及存储结构问题:思考一下动......
  • Java日志体系一本通
    主要内容1·学习java日志体系及日志工具的演进2·了解日志采集、处理、分析等各阶段的常用中间件3·学会搭建完整的elk日志平台4·学习日志打点,切面,日志文件等输出手段5·项......
  • 【开悟篇】Java多线程之JUC从入门到精通
    1.多线程J.U.C1.1线程池1.1.1线程回顾1)回顾线程创建方式继承Thread实现Runnable2)线程的状态NEW:刚刚创建,没做任何操作Threadthread=newThread();System.out.println(......
  • 面试小结
    想换个对技术要求比较高的岗位和有发展的工作环境,当然,得到一个与技能相匹配的薪资也是一个很重要的原因 面试了8家公司,就总结一下面试中重要的几个方面:1、技能。作为技术人......
  • java入门(1) 程序运行机制及运行过程
    首先我们来看一下java程序在底层是怎么工作的:JAVA有两种核心机制:Java虚拟机(JavaVirtualMachine):1、java虚拟机可以理解成一个以字节码为机器指令的CPU。2、对于不同的平台......
  • java基础
    集合类Map接口有哪些实现类?对于不需要排序的场景,优先考虑使用HashMap,因为它是性能最好的Map实现。如果需要保证线程安全,则可以使用ConcurrentHashMap。它的性能好于Ha......
  • Java_HTML5
    HTML详解目录1.初识HTMLHTML:HyperTextMarkupLanguage(超文本标记语言)超文本包括:文字、图片、音频、视频、动画等HTML发展史:1993-2013(HTML5)HTML5提供了一些新......
  • java之File的一些常用方法
    文件夹操作-->File-file类可以操作文件和文件夹###File的一些常用方法:-stringgetName():获取文件/文件夹的名字-booleanexists():判断文件是否存在-create......
  • Effective Java 阅读日记 1
    1.用静态工厂方法代替构造器说明在方法内部添加一个静态方法,用于获取一个对象,代替构造器的功能;比如,在boolean包装Boolean类中,就有valueOf方法可以代替构造方法获得一个......
  • JMM(Java内存模型)笔记
    JMM介绍1.什么是JMM?2.JMM的三大特性:1.原子性2.可见性3.有序性3.关于同步的规定:4.解释说明JMM中的八种操作:1.什么是JMM?​JMM是Java内存模型(JavaMemoryModel),简称JMM。它......