Java寒假作业——编程题
创始人
2024-05-17 06:55:57

二、编程题(ACM模式)

3 (2022百度)小红拿到了一个字符串,她想知道有多少个"baidu"型子串?所谓"baidu“型字符串,指第1个、第4个字母是辅音,第2、3、5个字符是元音,且每个字母都不相同的字符串。例如,"taigu"、"huida"、"paobu"、"baoli"等都是"baidu"型字符串。我们定义元音字母仅有'a、'e'、'i'、'o'、'u'这五种,其余字母均为辅音字母。

输入描述

baiduxiaojiabankanjiaran

输入一个字符串

输出描述

2

输出"baidu"型子串的数量

解释:"baidu"和"duoxi"合法。其中"jiaba"和"jiara"不合法,因为a出现了2次。

package 寒假作业编程题;import java.util.*;public class Exercise03 {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("输入一个字符串:");String s = input.next();int num = baiduNum(s);System.out.println("输出\"baidu\"型子串的数量:" + num);}private static int baiduNum(String s) {StringBuffer sb = new StringBuffer(s);int m = 0;int n = 4;//m n 卡五个区间int count = 0;for (int i = 0; i <= sb.length() - 5; i++) {if (ok(sb.substring(m, n + 1))) {count++;}m++;n++;}return count;}private static boolean ok(String subs) {//"baidu"型子串的数量HashMap map =  new HashMap<>();for (int i = 0; i < subs.length(); i++) {char c = subs.charAt(i);map.put(c, map.getOrDefault(c, 0) + 1);if ((i == 0 || i == 3) && (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')) {//如果第1个、第4个字母是元音return false;}if ((i == 1 || i == 2 || i == 4) && (c != 'a') || c !='e' || c != 'i' || c != 'o' || c != 'u') {//如果第2、3、5 个字符是是辅音return false;}}if (check(map)) {return true;} else {return false;}}private static boolean check(HashMap map) {//检查map中的值(字符出现次数有没有>1)Iterator it = map.entrySet().iterator();while (it.hasNext()) {Map.Entry entry = (Map.Entry) it.next();int val = (int) entry.getValue();if (val > 1) {return false;}}return true;}
}

4 (2022百度)小红拿到了一段java代码,请你判断其中最多有多少层for循环嵌套。保证代码合法,且不含注释。循环语句只有for,条件语句只有if,循环语句和条件语句保证包含大括号用来控制范围。代码中只有一个类和一个主函数。

输入描述

import java.util.*;

public class Main{

public static void main(String[] args){

Scanner in = new Scanner(System.in);

int a = 0 , b = 0;

int n = in.nextInt();

for (int i = 0; i < n; i++) {

if ( a < b ) {

a += b / 2;

}

for (int j = 0; j < n; j++) {

b++;

a += b;

}

for (int j = 1; j < n; j *= 2) {

b--;

}

}

System.out.println(a);

}

}

注意是多行输入

输出描述

2

输出最大嵌套数

相关内容

热门资讯

demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...