题解 | #MP3光标位置#

MP3光标位置

http://www.nowcoder.com/practice/eaf5b886bd6645dd9cfb5406f3753e15

import java.util.*;
public class Main {
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            while(sc.hasNext()){
                int n = sc.nextInt();
                String s = sc.next();
                int index =1;//光标位置
                int start =1;//记录当前列表的起始位置
                if(n<=4){
                    for(int i=1;i<n;i++){
                        System.out.print(i+" ");
                    }
                    System.out.println(n);
                    for(int j=0;j<s.length();j++){
                        if(index==1 && s.charAt(j)=='U'){
                            index=n;
                        }else if(index==n && s.charAt(j)=='D'){
                            index=1;
                        }else{
                            if(s.charAt(j)=='U'){
                                index--;
                            }else{
                                index++;
                            }
                        }
                    }
                    System.out.println(index);
                }else{
                    for(int j=0;j<s.length();j++){
                        if(index==1 && s.charAt(j)=='U'){
                            index=n;
                            start=n-3;//当从1翻到最后一页时,start值是最后一页的第一个值
                        }else if(index==n && s.charAt(j)=='D'){
                            index=1;
                            start=1;//当从最后一页翻到第一页时,start变成1
                        }else{
                            if(s.charAt(j)=='U'){
                                if(index==start){
                                  //当当前操作是up,且当前位置是当前页的第一个位置时,start要往上移动
                                    start--;
                                }
                                index--;
                            }else{
                                if(index==(start+3)){
                                  //当当前操作是down,且当前位置是当前页的最后一个位置时,start要往下移动
                                    start++;
                                }
                                index++;
                            }
                        }
                    }
                    //直接打印start 及后三位
                            for(int i=start;i<start+3;i++){
                                System.out.print(i+" ");
                            }
                            System.out.println(start+3);
                    System.out.println(index);
                }
            }
        }
}
全部评论

相关推荐

11-09 14:54
已编辑
华南农业大学 产品经理
大拿老师:这个简历,连手机号码和照片都没打码,那为什么关键要素求职职位就不写呢? 从上往下看,都没看出自己到底是产品经理的简历,还是电子硬件的简历? 这是一个大问题,当然,更大的问题是实习经历的描述是不对的 不要只是去写实习流程,陈平,怎么去开会?怎么去讨论? 面试问的是你的产品功能点,是怎么设计的?也就是要写项目的亮点,有什么功能?这个功能有什么难处?怎么去解决的? 实习流程大家都一样,没什么优势,也没有提问点,没有提问,你就不得分 另外,你要明确你投的是什么职位,如果投的是产品职位,你的项目经历写的全都是跟产品无关的,那你的简历就没用 你的面试官必然是一个资深的产品经理,他不会去问那些计算机类的编程项目 所以这种四不像的简历,在校招是大忌
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
2
收藏
分享
牛客网
牛客企业服务