728x90
https://www.acmicpc.net/problem/2179
ArrayList에 넣어서 비교하면 되는 문제였다.
포문에서 char배열로 변환한 후 비교했었는데 이러면 메모리 초과가 발생되었다 ..
charAt으로 해당 인덱스로 잘라서 비교함으로써 해결~~~
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
public class Main {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
ArrayList<String> list = new ArrayList<>();
for(int i=0;i<n;i++) {
String s= br.readLine();
if(!list.contains(s))
list.add(s);
}
int resultStr1=0;
int resultStr2=0;
int maxCount=0;
for(int i=0;i<n;i++) {
String str1 = list.get(i);
for(int j=i+1;j<n;j++) {
int count=0;
String str2=list.get(j);
int size=Math.min(str1.length(),str2.length());
for(int z=0;z<size;z++) {
if(str1.charAt(z)==str2.charAt(z)) count++;
else break;
}
if(count>maxCount) {
resultStr1=i;
resultStr2=j;
maxCount=count;
}
}
}
System.out.println(list.get(resultStr1));
System.out.println(list.get(resultStr2));
}
}
'Java' 카테고리의 다른 글
[백준 2668] 숫자고르기 (JAVA) (0) | 2023.04.30 |
---|---|
[백준 4179] 불! (JAVA) (0) | 2023.04.29 |
[백준 1522] 문자열 교환 (JAVA) (0) | 2023.04.28 |
[백준 1976] 여행가자 (JAVA) (0) | 2023.04.27 |
[백준 24337] 가희와 탑 (JAVA) (0) | 2023.04.27 |