인프런 커뮤니티 질문&답변
Chapter3-3.최대매출 문제 시간초과
작성
·
289
0
안녕하세요 chapter3에 3번 최대매출 문제에서 저랑 친구랑 거의 같은 코드인데 저만 시간초과가 나서 질문드립니다
<<친구코드>>
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int day = sc.nextInt();
int d=sc.nextInt();
sc.nextLine();
String[] st=sc.nextLine().split(" ");
sc.close();
int[] arr=new int[day];
for (int i = 0; i < day; i++) {
arr[i]=Integer.parseInt(st[i]);
}
int max=0;
for (int i = 0; i < day - d + 1; i++) {
int sum = 0;
for (int j = i; j < i+d; j++) {
sum += arr[j];
}
max = sum > max ? sum : max;
}
System.out.println(max);
}
}
<<<제 코드>>>
Scanner scanner = new Scanner(System.in);
int n= scanner.nextInt();
int k= scanner.nextInt();
int[] list= new int[n];
scanner.nextLine();
String[] str=scanner.nextLine().split(" ");
scanner.close();
for(int i=0; i<n; i++) {
list[i]= Integer.parseInt(str[i]);
}
int max=0;
for(int i=0; i<n-k +1; i++) {
int sum=0;
for(int j=i; j<i+k; j++) {
sum+=list[j];
//if(max<sum) max=sum;
max= sum>max ? sum: max;
}
}
System.out.println(max);
실행시간이 두배 정도 차이나는데 코드가 거의 같아서 어디가 문제인지 궁금합니다
감사합니다!





