华为上机题目
2015-06-06 15:00
274 查看
注意点:仔细检查编译错误,注意输入输出格式要写正确。
1,描述:
有10个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数。
运行时间限制: 无限制
内存限制: 无限制
输入:
先输入10个整数,以空格分隔;
再输入移动个数(即整数m)。
输出:
移动后的整数序列。
样例输入:
1 2 3 4 5 6 7 8 9 10
3
样例输出:
8 9 10 1 2 3 4 5 6 7
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner cin = new Scanner(System.in);
int[] input = new int[11];
int[] output = new int[10];
for(int i=0;i<11;i++){
input[i] = cin.nextInt();
}
for(int i=0;i<10;i++) {
int j = (i+(10-input[10]))%10;
output[i]=input[j];
System.out.print(output[i]+" ");
}
}
}
2,描述:
某个字符串只存在三种格式字符分别是0~9、A~Z和a~z,请按照数字在前、大写字母次之、小写字母最后
的方式排序,字符串长度不超过100。
运行时间限制: 无限制
内存限制: 无限制
输入:
只包含0~9,A~Z,a~z的字符串
输出:
按照数字在前、大写字母次之、小写字母最后的字符串。?同种类型请按到升序顺序输出。
样例输入:
Ad5tfzBD03
样例输出:
035ABDdftz
答案提示:把字符串转化为数组,排序输出即可
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner cin = new Scanner(System.in);
char[] rs = cin.next().toCharArray();
Arrays.sort(rs);
for(int i=0;i<rs.length;i++)
System.out.print(rs[i]);
}
}
3,描述:
火星人使用的运算符为@、#、$、&,优先级为 @>#>$>&,已知这些运算符与地球算法对应关系如下:
x@y = (x-1)*(y+1)
x#y = (2x+5)*(3y+60)
x$y = (x+1)*(2x+3)*(y-1)*(2y-3)
x&y = (x+y+1)*(y-9)+(x+7)/(y-8)
对于优先级,有x&y@z=x&(y@z)
请实现一个程序计算输入的一个算式的结果。
说明:
1、输入为一个常规算式,操作数均为非负整数,且均为合法算式。表达式中可以存在空格,表达式长度
不超过1023。
2、计算中间不会出现除数是0情况,测试用例保证。
3、为了简化,测试用例的算式没有括号,例如不会出现?x#(y&z)。
4、结果为整数,可以为负数。
运行时间限制: 无限制
内存限制: 无限制
输入:
多行算式字符串
输出:
一行输出一个计算结果
样例输入:
1@2
1#2
样例输出:
0
462
1,描述:
有10个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数。
运行时间限制: 无限制
内存限制: 无限制
输入:
先输入10个整数,以空格分隔;
再输入移动个数(即整数m)。
输出:
移动后的整数序列。
样例输入:
1 2 3 4 5 6 7 8 9 10
3
样例输出:
8 9 10 1 2 3 4 5 6 7
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner cin = new Scanner(System.in);
int[] input = new int[11];
int[] output = new int[10];
for(int i=0;i<11;i++){
input[i] = cin.nextInt();
}
for(int i=0;i<10;i++) {
int j = (i+(10-input[10]))%10;
output[i]=input[j];
System.out.print(output[i]+" ");
}
}
}
2,描述:
某个字符串只存在三种格式字符分别是0~9、A~Z和a~z,请按照数字在前、大写字母次之、小写字母最后
的方式排序,字符串长度不超过100。
运行时间限制: 无限制
内存限制: 无限制
输入:
只包含0~9,A~Z,a~z的字符串
输出:
按照数字在前、大写字母次之、小写字母最后的字符串。?同种类型请按到升序顺序输出。
样例输入:
Ad5tfzBD03
样例输出:
035ABDdftz
答案提示:把字符串转化为数组,排序输出即可
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner cin = new Scanner(System.in);
char[] rs = cin.next().toCharArray();
Arrays.sort(rs);
for(int i=0;i<rs.length;i++)
System.out.print(rs[i]);
}
}
3,描述:
火星人使用的运算符为@、#、$、&,优先级为 @>#>$>&,已知这些运算符与地球算法对应关系如下:
x@y = (x-1)*(y+1)
x#y = (2x+5)*(3y+60)
x$y = (x+1)*(2x+3)*(y-1)*(2y-3)
x&y = (x+y+1)*(y-9)+(x+7)/(y-8)
对于优先级,有x&y@z=x&(y@z)
请实现一个程序计算输入的一个算式的结果。
说明:
1、输入为一个常规算式,操作数均为非负整数,且均为合法算式。表达式中可以存在空格,表达式长度
不超过1023。
2、计算中间不会出现除数是0情况,测试用例保证。
3、为了简化,测试用例的算式没有括号,例如不会出现?x#(y&z)。
4、结果为整数,可以为负数。
运行时间限制: 无限制
内存限制: 无限制
输入:
多行算式字符串
输出:
一行输出一个计算结果
样例输入:
1@2
1#2
样例输出:
0
462