安卓开发及安全交流QQ群:838650234,感兴趣的可以加群。
2012题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int num_begin = sc_01.nextInt();
int num_end = sc_01.nextInt();
boolean result01 = false;
int flag = 0;//设置标志位
if (num_begin == 0 && num_end == 0) break;
else {
for (int count = num_begin; count <= num_end; count++) {
int result = (int) (Math.pow(count, 2)) + count + 41;
result01 = jianchasushu(result);
if(result01 == true){//说明是没有素数的。
flag = 1;
}
}
}
if(flag==1){
System.out.println("Sorry");
}else{
System.out.println("OK");
}
}
}
//原来大家方法都差不多,感觉有时候不能想什么是权威?
// 什么是标准?能解决问题自然是权威,自然是标准,都是人定的
private static boolean jianchasushu(int result) {
for(int i = 2;i<=(Math.pow(result,1.0/2)+1);i++){
if(result%i==0){
return true;
}
}
return false;
}
}
2013题:
import java.util.*;
public class Main {
public static void main(String[] args) {
//最后一天是第几天。
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int day = sc_01.nextInt();
int All_Peach = 1;
for (int i = 1; i < day; i++)
All_Peach = (All_Peach+1)*2;
System.out.println(All_Peach);
}
}
}
2014题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int rater_num = sc_01.nextInt();
int[] score = new int[rater_num];
for (int i = 0; i < score.length; i++) {
score[i] = sc_01.nextInt();
}
//去掉最低分。
score = removeMin(score);
//去掉最高分。
score = removeMax(score);
int result = 0;
for (int i = 0; i < score.length; i++) {
// if (score[i] != -1)
result += score[i];
}
System.out.println(String.format("%.2f",(double)result/(score.length)));
}
}
private static int[] removeMax(int[] score) {
int max = score[0];
int flag = 0;
for (int i = 1; i < score.length; i++) {
if (score[i] > max) {
max = score[i];
flag = i;
}
}
score[flag] = score[score.length-1];
score = Arrays.copyOf(score,score.length-1);
// score[flag] = -1;
return score;
}
private static int[] removeMin(int[] score) {
int min = score[0];
int flag = 0;
for (int i = 1; i < score.length; i++) {
if (score[i] < min) {
min = score[i];
flag = i;
}
}
// score[flag] = -1;
//对数组进行缩容
score[flag] = score[score.length-1];
score = Arrays.copyOf(score,score.length-1);
return score;
}
}
2015题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int num_01 = sc_01.nextInt();//数字的个数
int cha_ju = sc_01.nextInt();//几个数字的均值。
int[] allnum = new int[num_01];//所有数字
for (int i = 0; i < num_01; i++) {
allnum[i] = 2 * (i + 1);
}
for (int i = 0; i < num_01; i = i + cha_ju) {
int result = 0;
int counting =0,j=0;
//计算所有项之和。
for (j = i; j < i + cha_ju; j++) {
if (j >= allnum.length) {//对后续不进行处理。
} else {
result += allnum[j];
counting++;//每一列到底有多少数
}
}
//对其求均值
if(j<allnum.length){
System.out.print(result/counting+" ");
}else{
System.out.println(result/counting);
}
}
}
}
}
2016题:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int count_num = sc_01.nextInt();
int[] num_array = new int[count_num];
if (count_num == 0) {
break;
} else {
//输入数组所有元素
for (int i = 0; i < count_num; i++) {
num_array[i] = sc_01.nextInt();
}
int min = num_array[0], flag = 0, tmp;
//获取最小元素的下标
for (int i = 1; i < count_num; i++) {
if (num_array[i] < min) {
//是不是傻啊,不对最小值进行更新。
min = num_array[i];
flag = i;
}
}
//将两者进行交换
tmp = num_array[0];
num_array[0] = num_array[flag];
num_array[flag] = tmp;
//输出最终排序结果
for (int i = 0; i < count_num; i++) {
if(i<count_num-1){
System.out.print(num_array[i]+" ");
}else{
System.out.println(num_array[i]);
}
}
}
}
}
}
2017题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
int line_num = sc_01.nextInt();
for (int i = 0; i < line_num; i++) {
String string_01 = sc_01.next();
int counting = 0;
for (int j = 0; j < string_01.length(); j++) {
if (string_01.charAt(j) >= '0' && string_01.charAt(j) <= '9')
counting++;
}
System.out.println(counting);
}
}
}
2018题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int num_01 = sc_01.nextInt();//多少天
if (num_01 == 0) {
break;
} else {
int cow_today = 0;
ArrayList<Integer> arr_01 = new ArrayList<Integer>();
//先把所有数组进行填充,填充至length长度
for (int i = 1; i <= num_01; i++) {
if (i <= 4) {
arr_01.add(1);
} else {
for (int j = 0; j < i - 3; j++) {
cow_today += arr_01.get(j);
}
arr_01.add(cow_today);
cow_today = 0;
}
}
//计算所有总牛数并输出。
int cow_all = 0;
if (num_01 <= 4) {
System.out.println(num_01);
} else {
for (int i = 0; i < num_01 ; i++) {
cow_all += arr_01.get(i);
}
System.out.println(cow_all);
}
}
}
}
}
//更为简单的
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int num_01 = sc_01.nextInt();//多少天
if (num_01 == 0) break;
else {
int result = countingPigs(num_01);
System.out.println(result);
}
}
}
private static int countingPigs(int num_01) {
if (num_01 <= 4) return num_01;
else {
return countingPigs(num_01 - 1) + countingPigs(num_01 - 3);
}
}
}
2019题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
//以后麻烦用Arraylist存,这样很low,谢谢。
while (sc_01.hasNext()){
int num_coun = sc_01.nextInt();
int Insert_num = sc_01.nextInt();
int []num = new int[num_coun];
int flag = 0;
if(num_coun == 0 && Insert_num ==0){break;}
else {
for(int i = 0;i<num_coun;i++){
num[i] = sc_01.nextInt();
if(Insert_num>=num[i]){
flag = i;
}
}
for(int i = 0;i<num_coun-1;i++){
if(i!=flag){
System.out.print(num[i]+" ");
}else{
System.out.print(num[i]+" ");
System.out.print(Insert_num+" ");
}
}
if(flag!=(num_coun-1)) {
System.out.println(num[num_coun - 1]);
}else{
System.out.println(Insert_num);
} }
}
}
}
2020题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int num_count = sc_01.nextInt();
int[] num_all = new int[num_count];
if (num_count != 0) {
//输入所有int类型数组
for (int i = 0; i < num_count; i++) {
num_all[i] = sc_01.nextInt();
}
//对所有数组进行排序,每次都拿最大绝对值的数字。
//冒泡、快速、插入、希尔、归并、堆排序。
for (int i = 0; i < num_count; i++) {
int max ;//将最大值定为第i个
for(int j = i;j<num_count;j++){//进行最大值的计算。
if(Math.abs(num_all[j])>Math.abs(num_all[i])){
max = num_all[i];//每次进行更新。
num_all[i] = num_all[j];
num_all[j] = max;
}
}
}
//对所有数组进行输出
for (int i = 0; i < num_count; i++) {
if (i < num_count - 1) {
System.out.print(num_all[i] + " ");
} else {
System.out.println(num_all[i]);
}
}
} else {
break;
}
}
}
}
2021题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int teach_num = sc_01.nextInt();
int[] Payer = new int[teach_num];
if (teach_num != 0) {
//输入所有老师的个数和老师的工资。
for (int i = 0; i < teach_num; i++) {
Payer[i] = sc_01.nextInt();
}
int result = 0;
//输入面币种类
int[] Money = {100, 50, 10, 5, 2, 1};
for(int i = 0;i<teach_num;i++){
for(int j = 0;j<Money.length;j++){
result+=(Payer[i]/Money[j]);
//对result进行累加。
Payer[i] = Payer[i]%Money[j];
//每次更新Payer[i]
}
}
System.out.println(result);
} else {
break;
}
}
}
}
2022题:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int line_num = sc_01.nextInt();//行数
int column_num = sc_01.nextInt();//列数
//输入所有行列的值
int[][] all_num = new int[line_num][column_num];
for (int i = 0; i < line_num; i++) {
for (int j = 0; j < column_num; j++) {
all_num[i][j] = sc_01.nextInt();
}
}
//记录绝对值最大的值
int max = Math.abs(all_num[0][0]), flag_line = 0, flag_column = 0;
//反向遍历,从最后一个逐列逐行反着去读,若小于等于,则更新。
for (int i = line_num - 1; i >= 0; i--) {
for (int j = column_num - 1; j >= 0; j--) {
if (max <= Math.abs(all_num[i][j])) {
max = Math.abs(all_num[i][j]);
flag_line = i;
flag_column = j;
}
}
}
System.out.print((flag_line+1)+" "+(flag_column+1)+" ");
System.out.println(all_num[flag_line][flag_column]);
}
}
}
2023题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
while (sc_01.hasNext()) {
int line_num = sc_01.nextInt();
int conlmn_num = sc_01.nextInt();
int [][]all_num = new int[line_num][conlmn_num];
int []line_ave = new int[line_num];
int []column_ave = new int[conlmn_num];
//输入所有成绩
for(int i = 0;i<line_num;i++) {
for (int j = 0; j < conlmn_num; j++) {
all_num[i][j] = sc_01.nextInt();
}
}
//输入并计算所有学生的成绩总和
for(int i = 0;i<line_num;i++){
for(int j= 0;j<conlmn_num;j++){
line_ave[i] += all_num[i][j];
}
//输出每个学生的平均成绩
if(i<line_num-1){
System.out.print(String.format("%.2f",(double)(line_ave[i])/conlmn_num)+" ");
}else{
System.out.println(String.format("%.2f",(double)(line_ave[i])/conlmn_num));
}
}
//计算该门课的所有成绩。
for(int i = 0;i<conlmn_num;i++){
for(int j= 0;j<line_num;j++){
column_ave[i]+=all_num[j][i];
}
if(i<conlmn_num-1){
System.out.print(String.format("%.2f",(double)(column_ave[i])/line_num)+" ");
}else{
System.out.println(String.format("%.2f",(double)(column_ave[i])/line_num));
}
}
int counting =0;
boolean flag = true;
//计算大于所有平均成绩的学生
for(int i = 0;i<line_num;i++){
for(int j= 0;j<conlmn_num;j++){
if(all_num[i][j]<(double)(column_ave[j])/line_num){
flag =false;
}
}
if(flag) counting++;
flag =true;
}
System.out.println(counting);
System.out.println();
}
}
}
2024题:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc_01 = new Scanner(System.in);
int line_num = sc_01.nextInt();
sc_01.nextLine();
for (int i = 0; i < line_num; i++) {
String strings = sc_01.nextLine();
boolean result = checkString(strings);
if (result) {
System.out.println("yes");
} else {
System.out.println("no");
}
}
}
// C语言中规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线。
private static boolean checkString(String strings) {
for (int i = 0; i < strings.length(); i++) {
if (i == 0) {
if (strings.charAt(0) < 65 || (strings.charAt(0) > 90 && strings.charAt(0) < 95)
|| (strings.charAt(0) > 95 && strings.charAt(0) < 97) || strings.charAt(0) > 122) {
return false;
}
} else {
if (strings.charAt(i) < 48 || (strings.charAt(i) > 57 && strings.charAt(i) < 65) || (strings.charAt(i) > 90 && strings.charAt(i) < 95)
|| (strings.charAt(i) > 95 && strings.charAt(i) < 97) || strings.charAt(i) > 122) {
return false;
}
}
}
return true;
}
}
2025题:
import java.util.*;
public class Main {
public static void main(String[] args) {
// write your code here
Scanner sc_01= new Scanner(System.in);
while (sc_01.hasNext()){
String strings = sc_01.next();
int max = strings.charAt(0);
//获取字符串的Max值
for(int i = 0;i<strings.length();i++){
if(strings.charAt(i)>max){
max = strings.charAt(i);
}
}
//输出max
String outputstring=new String();
for(int i = 0;i<strings.length();i++){
outputstring+=strings.charAt(i);
if(strings.charAt(i)==max){
outputstring+="(max)";
}
}
System.out.println(outputstring);
}
}
}