1.给个一个正整数n<1000000,以素数相乘的形式输出n的值,如20=2*2*5;10=2*5;2=2,而输出的素数都是按计算器上面的数字来显示的,即每个数字都是以如下形式来输出的

首先要解决这一题要分大概6个步骤:

1.首先求出前100个素数

2.将n分解为素数相乘的形式

3.将分解后的多项式转换为字符串

5.将0~9,*所对应的符号用数组存储起来

6.分5行输出字符串中每个字符对应的数字符号

代码如下:

package com.mnmlist.test2;
/** 先求前一百个素数* 将整数n分解为从小到大素数相乘的形式* 将乘数多项式转换成字符串* 按行从1行到第五行输入每个字符(数字和乘号)对应的符号*/
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;public class Main
{public static boolean isPrime(int n){int k=(int)Math.sqrt(n)+1;if((n&1)==0)return false;for(int i=3;i<=k;i++){if(n%i==0)return false;}return true;}public static int[]getPrimeArr(int primeArr[]){int num=3;int index=1;while(num>0){if(isPrime(num)==true){primeArr[index++]=num;if(index==primeArr.length)return primeArr;}num+=2;}return primeArr;}public static void specialCase(String[]chArr,Map<Character, String[]>map){for(int i=0;i<5;i++){System.out.println(map.get('1')[i]);}}public static void main(String[] args){Scanner scanner=new Scanner(System.in);String[]zero={" - ","| |","   ","| |"," - "};String[]one={"   ","  |","   ","  |","   "};String[]two={" - ","  |"," - ","|  "," - "};String[]three={" - ","  |"," - ","  |"," - "};String[]four={"   ","| |"," - ","  |","   "};String[]five={" - ","|  "," - ","  |"," - "};String[]six={" - ","|  "," - ","| |"," - "};String[]seven={" - ","  |","   ","  |","   "};String[]eight={" - ","| |"," - ","| |"," - "};String[]nine={" - ","| |"," - ","  |"," - "};String[]flag={" "," ","*"," "," "};//primeArr=getPrimeArr(primeArr);int primeArr[]={2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541};//将数字和对应的符号对应起来Map<Character, String[]>map=new HashMap<Character,String[]>();map.put('0', zero);map.put('1', one);map.put('2', two);map.put('3', three);map.put('4', four);map.put('5', five);map.put('6', six);map.put('7', seven);map.put('8', eight);map.put('9', nine);map.put('*', flag);int num=0,tempNum=0;while(scanner.hasNext()){//将整数n分解为从小到大素数相乘的形式StringBuilder sBuilder=new StringBuilder();num=scanner.nextInt();if(num==1){specialCase(one, map);continue;}for(int i=0;i<primeArr.length;i++){while(num!=0&&num%primeArr[i]==0){sBuilder.append(""+primeArr[i]+"*");num/=primeArr[i]; }if(num==1)break;}if(num!=1)sBuilder.append(""+num+'*');String str=sBuilder.substring(0, sBuilder.length()-1);int strLen=str.length();//按行输出符号for(int i=0;i<5;i++){StringBuilder lineBuilder=new StringBuilder();for(int j=0;j<strLen;j++){lineBuilder.append(map.get(str.charAt(j))[i]);}System.out.println(lineBuilder.toString());}System.out.println();}}}

2.另外一题就很简单了,大概是研究生入学考试,有四门成绩,要求政治英语不低于60分,数学专业课不低于90分,总分不低于310,否则则考试失败,总分310~349属于自费,总分>=350属于公费,对应分别输出:Fail Zifei Gongfei

很简单,大概判断下条件就可以了

import java.util.Scanner;public class Main
{public static String getResult(int arr[]){int total=0;for(int i=0;i<4;i++)total+=arr[i];if(arr[0]<60||arr[1]<60||arr[2]<90||arr[3]<90||total<310){return "Fail";}if(total>=310&&total<350)return "Zifei";return "Gongfei";}public static void main(String[] args){Scanner scanner=new Scanner(System.in);int arr[]=new int[4];int count=scanner.nextInt();for(int i=0;i<count;i++){for(int j=0;j<4;j++){arr[j]=scanner.nextInt();}System.out.println(getResult(arr));}}}

2016奇虎360校园招聘编程题目相关推荐

  1. 2012年奇虎360校园招聘实习生笔试编程题

    2012年奇虎360校园招聘实习生笔试编程题 1.  自己实现库函数 int atoi(const char* str);  注意两点:(1). 字符串中,符号位的处理. (2).字符串中,出现非数字 ...

  2. 奇虎360校园招聘2015笔试题目

  3. 奇虎360_2017校园招聘笔试编程题第一题

    今晚做了360的校招笔试题,编程题难度适中,在这里跟大家分享一下编程题的第一题. 1. 题目 2. 输入输出及样例 3. 我的思路 这题应该看题目理解一下就有思路,最简单粗暴的就是创建一个二维数组in ...

  4. 奇虎360_2017校园招聘笔试编程题第二题

    今晚做了360的校招笔试题,编程题难度适中,在这里跟大家分享一下编程题的第二题.第二道题也不难想到思路,但是如果写法不当,可能无法满足题目的时间限制. 1. 题目 2. 输入输出及样例 3. 我的思路 ...

  5. 2017年3月18日奇虎360 笔试真题(3个编程题)

    360笔试的编程题有3个,前面2个我都提交并AC了,最后一个刚刚写完准备提交然而笔试刚刚结束,实在有些可惜.后来在赛码网提交了,发现也是AC的. 本文中题目来源:赛码网,代码来源:笔试中写的原代码. ...

  6. 奇虎360运维工程师招聘测试题

    公司名称:奇虎360 招聘职位:运维工程师 职位需求: 1.精通FreeBSD/Linux系统安装配置和系统参数优化设置. 2.三年以上IDC.服务器运维经验. 3.精通apache.nginx等we ...

  7. 【2015年奇虎360|绿盟科技|唯品会|4399秋招岗位分析及内推】一大波网络|安全|运维岗位来袭~...

    2015年华为网申截止提醒 ①华为的网申页面:http://career.huawei.com/recruitment/campus.html,之前说明是9月3号截止网申,这两天上去看,发布时间又更新 ...

  8. 【听学长学姐聊求职】2012年百度、腾讯、微软、奇虎360、人人、去哪网找工作经历总结...

    虽然互联网行业的求职热季在所有行业中最早,是每年的9-11月,但在次年3月左右依然有部分互联网公司补招新一届的毕业生,主页君今天为大家分享一篇很新的应届生求职经验,希望对在大家有所启发.大三的童鞋们也 ...

  9. 360 c语言 笔试,奇虎360校招的笔试真题

    选择题有45个? 好像是,三道简答题, 简答题: 1.设计一个课程表(包括目标人群.核心功能.特色设计); 2.说ATM的缺点,改进方法; 3.如何让李开复等互联网大牌关注你的微薄? 选择题记得不是很 ...

最新文章

  1. html修改headicon,index.html
  2. python输入数字翻译成星期几-Python练习笔记——计算输入日期为改年的第几天、星期几...
  3. TCP通讯处理粘包详解
  4. java entryset_Java HashMap entrySet()方法与示例
  5. 安装SQL2K,当创建挂起文件操作之后...
  6. JQuery的$.extend()的源码
  7. SQL Server 2016安装指南——针对“Microsoft R Open和Microsoft R Serve”提供解决经验
  8. 【在大学的快乐生活】锐捷校园网无感认证通过路由器mac地址克隆实现一账号多终端
  9. 坚果云+Markor+Typora实现多平台Markdown协同编辑
  10. python怎么读取表格中的数据_如何用Python读取电子表格中的数据,面试必学
  11. 思考像微信QQ视频通话最小化后悬浮展现实现思路
  12. 内网穿透,让自己的电脑当服务器
  13. linux uart应用开发(ttyS*设备)
  14. omap3isp上层应用解析
  15. Ubuntu 键盘鼠标失效解决办法
  16. cocos植物大战僵尸(三)游戏场景:地图滚动
  17. 上海计算机一级同等水平,上海计算机等级考试哪一级最难(全国计算机一级考试难吗)...
  18. 到底什么是叶脊网络?
  19. NB-Iot烟感03:感烟探测器原理图设计
  20. FAQ02【Hive】:Hive连接后出现一堆乱七八糟的日志

热门文章

  1. dell 服务器面板显示屏,Dell服务器面板错误码详解
  2. 通信工程专业就业之------通信协议栈开发(LTE/NR)
  3. opensips-02
  4. r 字符串转化为数值_【R语言】tidyverse之一:读写数据
  5. java毕业设计青少年心理健康公益扶助网站源码+lw文档+mybatis+系统+mysql数据库+调试
  6. 操作系统Windows【实验】文件复制
  7. shell控制超时时间,自动退出
  8. 谷歌宣布Android设备累计激活量突破10亿台
  9. git中统计代码行数
  10. 期待第二届云计算大会