第六届华为创新杯编程大赛第二轮(2014.4.29)

第一题:外星人比数的大小

来自星星的都教授除了所有感官比地球人高出七倍,始终容颜不老以外,还拥有一项在地球人看来特别神奇的能力,他会瞬间(0.00000000000000000000001s以内)按照他的规则比较地球人熟悉的两个十进制数字的大小,他比较的规则如下:

1、将要比较的两个数字分别转换成二进制数字;

2、计算两个二进制数字中1的个数,个数多的数字为两者中的大者;

3、负数按照其绝对值进行比较;

请利用地球人发明的计算机程序逼近都教授的特异功能,实现时可以有以下约束:

1、输入数据为范围在-32768到32768(地球人的十进制世界)之间的任意两个数字;

2、如果经过比较后2个数相等,输出为0,如果不相等,输出最大值。如果输入非法,输出-1。

简单的字符串题


import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner in =new Scanner(System.in);
int m,n;
String m1,n1;
int mm,nn,mo = 0,no=0;
mm=0;
nn=0;
Boolean flag=true;
if(in.hasNextInt())
mo=in.nextInt();
else {
flag=false;}
if(in.hasNextInt())
no=in.nextInt();
else {
flag=false;}
if(!flag){
System.out.println("-1");return;
}
m=Math.abs(mo);
n=Math.abs(no);
if(m>32768 || n>32768){
System.out.println("-1");return;
}
m1=Integer.toBinaryString(m);
n1=Integer.toBinaryString(n);
//System.out.println(m1);
//System.out.println(n1);
for(int i=0;i<m1.length();i++){
if(m1.charAt(i)==‘1‘){
mm++;
}
}
for(int j=0;j<n1.length();j++){
if(n1.charAt(j)==‘1‘){
nn++;
}
}
if(mm>nn)
System.out.println(mo);
else if(mm<nn)
System.out.println(no);
else
System.out.println("0");

} }

第二题:笨笨熊搬家打包篇
描述:     
  
森林里的笨笨熊今天可开心啦——他买了新房子,乔迁新喜要搬家了。因此,笨笨熊请了许多好朋友来帮忙搬家,并准备了很多小纸盒用来装需要搬的物品,不过,这些纸盒的容积都是相同的,并且最多只能装两个物品。但是,为了不打扰太多的朋友,笨笨熊想了个“聪明”办法:让每个纸盒使用效率最高(注:只要纸盒容积大于物品的体积之和就认为可以装下;物品体积不会大于纸盒容积),这样需要的纸盒最少。为了帮助笨笨熊提前通知朋友,请你根据笨笨熊的办法,帮忙算出:需要纸盒的最少数目是多少? 
 

运行时间限制:       
无限制
内存限制:       
无限制
输入:     
  
整数V——纸盒的容积;
整数N——物品的总数目N;
共N个整数(对应N个物品的体积,每个整数用空格隔开)。

输出: 
      
整数M——需要纸盒的最少数目; 
  
    
样例输入: 
   
  
10

2
3
样例输出:     
  
1

排序+贪心


import java.util.Arrays;
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner in =new Scanner(System.in);
int v,n,m;
m=0;
int k=0;
v=in.nextInt();
n=in.nextInt();
int a[]=new int[n];
for(int i=0;i<n;i++){
a[i]=in.nextInt();
}
Arrays.sort(a);
for(int j=n-1;j>=k;j--){
if(a[j]+a[k]>v){
m++;
}
else {
k++;
m++;
}

}
System.out.print(m);
}
}

第六届华为创新杯编程大赛第二轮(2014.4.29),码迷,mamicode.com

时间: 2024-10-06 14:02:07

第六届华为创新杯编程大赛第二轮(2014.4.29)的相关文章

第六届华为创新杯编程大赛-进阶1第1轮

洞穴逃生 描述: 精灵王子爱好冒险,在一次探险历程中,他进入了一个神秘的山洞.在洞穴深处,精灵王子不小心触动了洞穴内暗藏的机关,整个洞穴将很快塌陷,精灵王子必须尽快逃离洞穴.精灵王子的跑步速度为17m/s,以这样的速度可能是无法逃出洞穴的.庆幸的是精灵王子拥有闪烁法术,可在1s内移动60m,不过每次使用闪烁法术都会消耗魔法值10点.精灵王子的魔法值恢复的速度为4点/s,只有处在原地休息状态时才能恢复. 现在已知精灵王子的魔法初值M,他所在洞穴中的位置与洞穴出口之间的距离S,距离洞穴塌陷的时间T.

【大坑特坑】第六届华为“创新杯”编程大赛初赛题目(第五场)

简直没法吐槽华为的服务器质量了,登一次半小时,提交一次等半小时,然后第二个题的结果还不知道呢,服务器就挂了... 题目本身倒是还挺简单的. A题是鸡兔同笼问题: 给出鸡和兔子的头数和脚数(可能不对),让你判断鸡的个数和兔子的个数..小学经典问题. 关键是不合法的情况,总共有4种. 1.头比脚多.. 2.脚是奇数= = 3.脚>4*头或者脚<2*头. so.出来了. #include <iostream> #include <cstring> #include <c

第六届华为创新杯编程大赛-进阶1第3轮

题目忘记粘贴了,题目大致意思就是笨笨熊要搬家.它如今的家在B点,新的豪宅在H点.如今要从B点到H点 地图R表示行,C表示列.当中: -表示能通过 #表示不能通过 B表示笨笨熊原来的家 H表示笨笨熊的新豪宅 输入 R C R×C矩阵 输出 Y//表示能够通过 N//表示不能够通过 解析:本来这道题非常明显.非常easy的搜索嘛,可是不知道是由于自己非常长时间不写搜索了还是怎么回事,一直在改代码,最后在超过时间给提交上去了,可是最后居然还返回分数了,完美AC哈. 直接贴个代码 #include <i

第六华为创新杯程序设计大赛-先进1文章1圆

洞穴逃生 叙述性说明: 精灵王子冒险.在探险的过程中,他进入一个神奇的洞穴.在洞穴深处.精灵王子不小心碰到隐藏的洞穴器官,整个洞穴将很快崩溃,精灵王子必须从洞穴尽可能快地逃离.运行速度的精灵王子17m/s,以这种速度可能是无法逃出洞穴的.庆幸的是精灵王子拥有闪烁法术.可在1s内移动60m,只是每次使用闪烁法术都会消耗魔法值10点.精灵王子的魔法值恢复的速度为4点/s,仅仅有处在原地歇息状态时才干恢复. 如今已知精灵王子的魔法初值M.他所在洞穴中的位置与洞穴出口之间的距离S,距离洞穴塌陷的时间T.

2014第六届华为编程大赛初赛第一轮

/*********************************************************************** 1.投票问题 输入若干候选人,以及投票,格式如下,输出(按输入候选人输入顺序)候选人以及得票,以及 无效票数. Input: addCandidate xx1 addCandidate xx2 addCandidate xx3 addCandidate xx4 addCandidate xx5 addCandidate xx6 vote xx2 vot

2014第六届华为编程大赛初赛第四轮

/*********************************************************************** 第一题 求n个整数的最大公约数 输入 第一行: n个整数 第二行:各个整数 以空格隔开 输出:公约数 例子: input: 4 10 15 20 25 output: 5 **********************************************************************/ #include <stdio.h>

2015微软创新杯Imaginecup大赛报名进行中(报名截止2014年12月31日23:59)

CSDN高校俱乐部与微软官方合作,2015微软创新杯大赛中国区官网落户CSDN高校俱乐部:http://student.csdn.net/mcs/imaginecup2015 在微软官方设置创新杯中国区奖项之外,CSDN高校俱乐部每个竞赛项目特设一等奖.二等奖.三等奖及纪念奖若干名. CSDN高校俱乐部特别奖(获奖者需在高校俱乐部进行过报名备案):详情-> 1. 一等奖(三支团队): 每个竞赛项目一等奖一名,每支团队获得奖金2,000元人民币,团队成员每人尊享2015 CSDN VIP年卡会员:

华为第六届创新编程大赛第一轮 电话本题目

比赛的时候提交不了,先把题目记下来 电话号码本 描述: 实现一个简易电话号码本的程序,存储电话号码,可以通过名字获取电话号码,同时也可以通过电话号码获取对应的名字.说明:    1.名字由英文字母组成,区分大小写.1<=字母数量<=20    2.名字和电话号码一一对应    3.名字和电话号码均唯一    4.电话号码长度n,由数字组成.1<= n <=20    5.电话号码本中最大的记录条数为200运行时间限制: 无限制 内存限制:  无限制 输入:  输入命令字如下:sav

“青软杯”安徽科技学院第六届程序设计大赛_专业组

Contest - "青软杯"安徽科技学院第六届程序设计大赛_专业组 Start time:  2015-04-18 08:00:00.0  End time:  2015-04-18 12:00:00.0 Current System Time:  2015-04-21 00:07:42.57  Contest Status:   Ended 关于举办"青软杯"安徽科技学院 第六届程序设计大赛通知 ACM 国际大学生程序设计竞赛 (International Co