题解 | #MP3光标位置#
MP3光标位置
https://www.nowcoder.com/practice/eaf5b886bd6645dd9cfb5406f3753e15
#include <iostream> #include <string.h> using namespace std; int main() { int n,u,d,x=1,k=1; string s; cin>>n; cin>>s; for(int i=0;i<s.length();i++){ if(s[i]=='U'){ if(x==1){ if(n<=4) { x=n; k=n; } else if(k==1) { x=4; k=n; } else{ k--; } } else { x--; k--; } } if(s[i]=='D'){ if(x==4||k==n){ if(n<=4) { x=1; k=1; } else if(k==n) { x=1; k=1; } else{ k++; } } else { x++; k++; } } } if(n<=4){ for(int i=1;i<=n;i++){ cout<<i<<' '; } cout<<endl<<k; return 0; } for(int i=x-1;i>=1;i--){ cout<<k-i<<' '; } cout<<k<<' '; for(int i=x;i<=3;i++){ cout<<k+i-x+1<<' '; } cout<<endl<<k; return 0; } // 64 位输出请用 printf("%lld")
浪费生命的题目