一共五道编程题
* 套圈,就是获得对应的分值 import java.util.HashMap; import java.util.Map; import java.
util.Scanner;
/*小团和小美在玩数圈游戏,游戏规则是这样的:给出一个数字,小美需要立刻说出这个数字包含的圈圈的数量。因为小团提问的频率非常快,小美希望你能帮她用程序来计算出来。
例如,对于数字0,包含1个圈,对于数字2,包含0个圈,对于数字8,包含2个圈。 我们给出对圈的认定标准如下表:*/ public class Main01 {
public static void main(String[] args) { Map<Integer, Integer> map = new HashMap
<>(); map.put(0,1); map.put(1,0); map.put(2,0); map.put(3,0); map.put(4,0); map.
put(5,0); map.put(6,1); map.put(7,0); map.put(8,2); map.put(9,1); int sum = 0;
Scanner scanner = new Scanner(System.in); Integer i = scanner.nextInt(); char[]
chars= String.valueOf(i).toCharArray(); for (int j = 0; j < chars.length; j++) {
sum+= map.get(chars[j]-48); } System.out.println(sum); } }
2.士兵站队,每个士兵有个身高有个名字,先根据身高排序,身高相同则根据姓名中字符大小排序,小的在前,字符相同名字长度短的在前,这道题重写比较器没有ac很可惜
3.问路,就是给两行数据代表哪里到哪里联通,然后问路通不通,每条路是双向的,我就是拿二维数组做记录,在判断
import java.util.Scanner; /**第一行两个正整数n和m,分别表示地图上的地点数(地点从1到n进行标号),和地图中包含的道路数。
接下来2行,每行m个正整数,其中第1行第 i 个数为u,其中第2行第 i 个数为v,表示地点u和地点v之间有一条直接的通路。(保证无重边,无自环)
接下来一个正整数q,表示小美想询问的次数。 接下来q行,每行两个正整数u和v,表示一次询问:地点u和地点v之间是否有一条直接的通路呢?
(题中道路为双向路,数字间两两有空格隔开) n<=10000, m<=10000, q<=300 1<=u<=n, 1<=v<=n, u≠v*/ public
class Main03 { public static void main(String[] args) { Scanner scanner = new
Scanner(System.in); int n = scanner.nextInt(); int m = scanner.nextInt(); int[][
] path = new int[n+1][n+1]; int[] row = new int[m]; for (int i = 0; i < m; i++)
{ row[i] = scanner.nextInt(); } int[] col = new int[m]; for (int i = 0; i < m; i
++) { col[i] = scanner.nextInt(); } int t = 0; while (t < m){ path[row[t]][col[t
]]++; path[col[t]][row[t]]++; t++; } int q = scanner.nextInt(); for (int i = 0;
i< q; i++) { int i1 = scanner.nextInt(); int i2 = scanner.nextInt(); if (path[i1
][i2] != 0){ System.out.println("Yes"); }else{ System.out.println("No"); } } //
for (int i = 0; i < n; i++) { // for (int j = 0; j < n; j++) { //
System.out.print(path[i][j]); // } // System.out.println(); // } } }
4.2*2的一个方格填充颜色,给n种颜色返回他的方案数,要求两个相邻颜色不能相同
5.搭积木,先给出一个当前积木的拜访,再给出一个预期的积木拜访,每次可以从右拿一个或者向左放一个,问从当前到最后预期的执行次数
-_-蓝桥杯加笔试直接做蒙,还是要多多练习。冲!