计算芯片序号(亡羊补牢,晚了)
类型 | A | B | A | B | A | A | A | B | B | B | A |
序号 | 1 | 2 | 1 | 3 | 1 | 1 | 4 | 5 | 6 | 7 | 4 |
芯片内id | 1 | 1 | 2 | 1 | 3 | 4 | 1 | 1 | 1 | 1 | 2 |
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int A_sum=0;
int B_sum=0;
int A_num=1;
int B_num=1;
int A_id=0;
int B_id=0;
Scanner sc = new Scanner(System.in);
Scanner sc2 = new Scanner(System.in);
int M=sc.nextInt();// 芯片数量
int N=sc.nextInt();// 业务配置数量
String s = sc2.nextLine();//用户配置业务
for(int i=0;i<s.length();i++){
if(s.charAt(i)=='A'){
A_sum++;
if(A_id<4){// 芯片没用完
//A_num不变
A_id=(A_sum-1)%4+1;
}
else{// 芯片用完了,等于B下一个序号
A_num=B_num+1;
A_id=(A_sum-1)%4+1;
}
}
if(s.charAt(i)=='B'){
B_sum++;
B_num=A_sum/5+1+B_sum;
B_id=1;
}
}
if(Math.min(A_num,B_num)>M){
System.out.println(0);
System.out.println(0);
}
else{
if(s.charAt(s.length()-1)=='B'){
System.out.println(B_num);
System.out.println(B_id);
}
else{
System.out.println(A_num);
System.out.println(A_id);
}
}
}
}
编程能力太弱,准备不充足,继续努力,不要放弃。