java로 MAXSUM 시간초과를 어떻게 해결할까요 ㅠ 파밀리아 for문을 테스트 케이스를 포함하여 n2번인데.. 어떻게 시간을 더 줄일수 있을런지가..의문입니다. java가 cpp에 비해서 많이 느린것을 커버할 수 있을 수단을..못찾겠네요 import java.io.*; public class Main { public static void main(String[] ar) throws IOException { BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); int T = Integer.parseInt(in.readLine()); for (int i = 0; i < T; i++) { int n = Integer.parseInt(in.readLine()); int num[] = new int[n]; int sum1 = 0; int sum2 = 0; String str = in.readLine(); for (int j = 0; j < n; j++) { num[j] = Integer.parseInt(str.split(" ")[j]); } for(int j = 0; j < n; j++){ sum2 += num[j]; if(sum2<0) sum2 = 0; if(sum2 > sum1) sum1 = sum2; } System.out.println(sum1); } } } 9년 전
2개의 댓글이 있습니다. amok 이 코드에서는 str.split(" ")가 굉장히 여러 번 호출됩니다. 한 번만 호출되도록 수정하시면 통과될 겁니다. 9년 전 link 파밀리아 오호 감사합니다. split을 1번만 사용하니까 RTE에 안걸리네요.! 9년 전 link 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
파밀리아
for문을 테스트 케이스를 포함하여 n2번인데.. 어떻게 시간을 더 줄일수 있을런지가..의문입니다. java가 cpp에 비해서 많이 느린것을 커버할 수 있을 수단을..못찾겠네요
import java.io.*;
public class Main {
public static void main(String[] ar) throws IOException {
}
9년 전