上海耀乘健康科技公司笔试
两道算法
1.给平面三个点判断能组成多少个三角形。暴力n^3过了
2.给一个合数,求他的分解质因数,以每个因数的底数和指数输出,比如12 = 2 *2 * 3, 输出[[2,2],[3,1]] , 合数范围为2~2^31 - 1。
只过了20%, 太菜了,后面看题解学会了。代码如下:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
while (n -- > 0){
int a = scanner.nextInt();
for (int i = 2 ; i <= a/i ; i++){
// i 为什么一定是质数? 因为如果是合数,应该被他的因子分解了已经。
if (a % i == 0){
int cnt = 0;
while (a % i == 0){
a /= i;
cnt++;
}
System.out.println(i + " " + cnt);
}
}
if(a > 1) System.out.println(a + " " + 1);
System.out.println();
}
}
}
1.给平面三个点判断能组成多少个三角形。暴力n^3过了
2.给一个合数,求他的分解质因数,以每个因数的底数和指数输出,比如12 = 2 *2 * 3, 输出[[2,2],[3,1]] , 合数范围为2~2^31 - 1。
只过了20%, 太菜了,后面看题解学会了。代码如下:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
while (n -- > 0){
int a = scanner.nextInt();
for (int i = 2 ; i <= a/i ; i++){
// i 为什么一定是质数? 因为如果是合数,应该被他的因子分解了已经。
if (a % i == 0){
int cnt = 0;
while (a % i == 0){
a /= i;
cnt++;
}
System.out.println(i + " " + cnt);
}
}
if(a > 1) System.out.println(a + " " + 1);
System.out.println();
}
}
}
全部评论
第二段代码有点问题把
大佬的算法是在什么平台上学的
是acm模式?
请问有后续吗
相关推荐
10-30 21:46
安庆职业技术学院 后期制作 点赞 评论 收藏
分享
11-23 10:38
蚌埠坦克学院 服装/纺织设计 沉淀一会:**圣经
1.同学你面试评价不错,概率很大,请耐心等待;2.你的排名比较靠前,不要担心,耐心等待;3.问题不大,正在审批,不要着急签其他公司,等等我们!4.预计9月中下旬,安心过节;5.下周会有结果,请耐心等待下;6.可能国庆节前后,一有结果我马上通知你;7.预计10月中旬,再坚持一下;8.正在走流程,就这两天了;9.同学,结果我也不知道,你如果查到了也告诉我一声;10.同学你出线不明朗,建议签其他公司保底!11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
快手公司氛围 213人发布 投递快手等公司10个岗位 >
点赞 评论 收藏
分享