为嘛我这样子还会超时
import java.io.BufferedInputStream;
import java.util.Scanner;
public class Main {
static int N = 50010;
static int[] sum = new int[N];
static int[] first = new int[N];
static int[] last = new int[N];
public static void main(String[] args){
Scanner sc = new Scanner(new BufferedInputStream(System.in));
int n = sc.nextInt();
for(int i = 1;i <= n;i ++){
int a = sc.nextInt();
sum[i] = (a + sum[i - 1]) % 7;
}
for(int i = n;i >= 0;i --)
first[sum[i]] = i;
for(int i = 0;i <= n;i ++)
last[sum[i]] = i;
//直接枚举答案
int max = 0;
for(int i = 0;i <= 6;i ++)
max = Math.max(last[i] - first[i], max);
System.out.println(max);
}
}