我真的无语了。
写题写的太投入,完全不记得时间,写完的算法大题忘记提交。
晚上八点半结束的考试,老子愣是差了一秒钟从idea粘贴到提交面板上。
我不知道该说什么了。
怪我是个菜鸡。写的那么慢。
言归正传:
题目大意是
eg:
输入:11222566679
输出:CJOPW
按照我的套路,就是统计连续出现的数字个数然后添加进去。
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//接收输入的值
String in = sc.next()+"0";
//用于装载字母
ArrayList<String> res=new ArrayList();
int count2=0;
int count3=0;
int count4=0;
int count5=0;
int count6=0;
int count7=0;
int count8=0;
int count9=0;
//对每一个数值做分析
for (int i = 0; i <in.length() ; i++) {
if(i!=0&&(Integer.parseInt(in.charAt(i)+"")!=Integer.parseInt(in.charAt(i-1)+""))){
//本次出现的数字与上一个不相同
if(Integer.parseInt(in.charAt(i-1)+"")==2){
res.add(char2(count2));
count2=0;
}
if(Integer.parseInt(in.charAt(i-1)+"")==3){
res.add(char3(count3));
count3=0;
}
if(Integer.parseInt(in.charAt(i-1)+"")==4){
res.add(char4(count4));
count4=0;
}
if(Integer.parseInt(in.charAt(i-1)+"")==5){
res.add(char5(count5));
count5=0;
}
if(Integer.parseInt(in.charAt(i-1)+"")==6){
res.add(char6(count6));
count6=0;
}
if(Integer.parseInt(in.charAt(i-1)+"")==7){
res.add(char7(count7));
count7=0;
}
if(Integer.parseInt(in.charAt(i-1)+"")==8){
res.add(char8(count8));
count8=0;
}
if(Integer.parseInt(in.charAt(i-1)+"")==9){
res.add(char9(count9));
count9=0;
}
}
char c = in.charAt(i);
int i1 = Integer.parseInt(c+"");
if(i1==1){
continue;
}
if(i1==2){
count2=count2+1;
}
if(i1==3){
count3=count3+1;
}
if(i1==4){
count4=count4+1;
}
if(i1==5){
count5=count5+1;
}
if(i1==6){
count6=count6+1;
}
if(i1==7){
count7=count7+1;
}
if(i1==8){
count8=count8+1;
}
if(i1==9){
count9=count9+1;
}
}
System.out.println(res);
}
public static String char9(int count9) {
int i = count9 % 4;
if(i==1){
return "W";
}
if(i==2){
return "X";
}
if(i==3){
return "Y";
}
if(i==0){
return "Z";
}
return "";
}
public static String char8(int count8) {
int i = count8 % 3;
if(i==1){
return "T";
}
if(i==2){
return "U";
}
if(i==0){
return "V";
}
return "";
}
public static String char7(int count7) {
int i = count7 % 4;
if(i==1){
return "P";
}
if(i==2){
return "Q";
}
if(i==3){
return "R";
}
if(i==0){
return "S";
}
return "";
}
public static String char6(int count6) {
int i = count6 % 3;
if(i==1){
return "M";
}
if(i==2){
return "N";
}
if(i==0){
return "O";
}
return "";
}
public static String char5(int count5) {
int i = count5 % 3;
if(i==1){
return "J";
}
if(i==2){
return "K";
}
if(i==0){
return "L";
}
return "";
}
public static String char4(int count4) {
int i = count4 % 3;
if(i==1){
return "G";
}
if(i==2){
return "H";
}
if(i==0){
return "I";
}
return "";
}
public static String char3(int count3) {
int i = count3 % 3;
if(i==1){
return "D";
}
if(i==2){
return "E";
}
if(i==0){
return "F";
}
return "";
}
public static String char2(int count2){
int i = count2 % 3;
if(i==1){
return "A";
}
if(i==2){
return "B";
}
if(i==0){
return "C";
}
return "";
}
}
真的不难。
可是我这个手抖的傻逼,连提交都赶不上趟。暴风哭泣了。
今年与阿里无缘了。