题解 | MP3光标位置
MP3光标位置
https://www.nowcoder.com/practice/eaf5b886bd6645dd9cfb5406f3753e15
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = Integer.parseInt(in.nextLine());
String s = in.nextLine();
if (n <= 4) {
for (int i = 0; i < n; i++) {
if (i != 0) {
System.out.print(" ");
}
System.out.print(i + 1);
if (i == n - 1) {
System.out.println();
}
}
int ans = 1;
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == 'U') {
if (ans == 1) {
ans = n;
} else ans--;
}
if (s.charAt(i) == 'D') {
if (ans == n) {
ans = 1;
} else ans++;
}
}
System.out.print(ans);
} else {
int ans = 1;
int ans1 = 1;
int b = 1;
for (int i = 0; i < s.length(); i++) {
ans1 = ans;
if (s.charAt(i) == 'U') {
if (ans == 1) {
ans = n;
b = 4;
} else {
ans--;
if (b > 1) {
b--;
}
}
}
if (s.charAt(i) == 'D') {
if (ans == n) {
ans = 1;
b = 1;
} else {
ans++;
if (b < 4) {
b++;
}
}
}
}
if(b == 1){
System.out.println(ans+" "+(ans+1)+" "+(ans+2)+" "+(ans+3));
}else if(b == 2){
System.out.println((ans-1)+" "+(ans)+" "+(ans+1)+" "+(ans+2));
}else if(b == 3){
System.out.println((ans-2)+" "+(ans-1)+" "+(ans)+" "+(ans+1));
}else if(b == 4){
System.out.println((ans-3)+" "+(ans-2)+" "+(ans-1)+" "+(ans));
}
System.out.print(ans);
}
}
}



查看11道真题和解析