-
[SWEA] [JAVA] [Difficulty 2] [1959] 두 개의 숫자열SW Expert Academy 2022. 11. 16. 19:47
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; public class Solution { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int T = Integer.parseInt(br.readLine()); // 테스트 케이스 ArrayList<Integer> arr = new ArrayList<>(); // 정답을 저장할 list int ans = 0; // 테스트케이스 for(int tc=0; tc<T; tc++) { StringTokenizer st = new StringTokenizer(br.readLine()," "); int N = Integer.parseInt(st.nextToken()); // N개의 숫자로 구성된 문자열 int M = Integer.parseInt(st.nextToken()); // M개의 숫자로 구성된 문자열 int Narr[] = new int[N]; int Marr[] = new int[M]; int sum = 0; ans = 0; // N개의 숫자로 구성된 문자열을 받아서 배열에 저장 st = new StringTokenizer(br.readLine()," "); for(int i=0; i<N; i++) { Narr[i] = Integer.parseInt(st.nextToken()); } // M개의 숫자로 구성된 문자열을 받아서 배열에 저장 st = new StringTokenizer(br.readLine()," "); for(int j=0; j<M; j++) { Marr[j] = Integer.parseInt(st.nextToken()); } // M 배열이 N 배열보다 클 때 if(Narr.length < Marr.length) { for(int i=0; i<=(Marr.length-Narr.length); i++) { sum = 0; for(int j=0; j<Narr.length; j++) { sum += (Narr[j] * Marr[i+j]); } if(ans<sum) ans = sum; } // N 배열이 M 배열보다 클 때 } else { for(int i=0; i<=(Narr.length-Marr.length); i++) { sum = 0; for(int j=0; j<Marr.length; j++) { sum += (Marr[j] * Narr[i+j]); } if(ans<sum) ans = sum; } } arr.add(ans); } for(int i=1; i<=T; i++) { System.out.println("#" + i + " " + arr.get(i-1)); } } }
'SW Expert Academy' 카테고리의 다른 글
[SWEA] [JAVA] [Difficulty 2] [1940] 가랏! RC카! (0) 2022.11.16 [SWEA] [JAVA] [Difficulty 2] [1948] 날짜 계산기 (0) 2022.11.16 [SWEA] [JAVA] [Difficulty 2] [1979] 어디에 단어가 들어갈 수 있을까 (0) 2022.11.16 [SWEA] [JAVA] [Difficulty 2] [1284] 수도 요금 경쟁 (0) 2022.11.16 [SWEA] [JAVA] [Difficulty 2] [1288] 새로운 불면증 치료법 (0) 2022.11.16