题目
感觉这题的意思比较难懂,题目比较简单,直接模拟就过了
题意:每次都只取出一个,好像和约瑟夫环有点像
AC代码:
package 蓝桥杯2016;
import java.util.*;
public class 赢球票 {static Scanner sc=new Scanner(System.in);public static void main(String[] args) {while(sc.hasNext()) {int n=sc.nextInt();int a[]=new int [n];for(int i=0;i<n;i++) {a[i]=sc.nextInt();}int b[]=new int [n];int ans=0;for(int i=0;i<n;i++) {//从每个数都开始一次int x=0;//记录数的数int max=0;int s=0;for(int j=0;j<n;j++) {b[j]=a[j];}for(int j=i;x<n;j++) {if(s==n)break;//数组为空if(b[j%n]==0)continue;//出现0表示该位置为空x++;if(b[j%n]==x) {x=0;max+=b[j%n];b[j%n]=0;s++;}}ans=Math.max(ans, max);}System.out.println(ans);}}
}