728x90
자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비 - 인프런 | 강의
자바(Java)로 코딩테스트를 준비하시는 분을 위한 강좌입니다. 코딩테스트에서 가장 많이 출제되는 Top 10 Topic을 다루고 있습니다. 주제와 연동하여 기초문제부터 중급문제까지 단계적으로 구성
www.inflearn.com
5-7
import java.util.Scanner;
public class Main {
public String solution(String m, String k){
String answer = "NO";
int num = 0;
for(int i = 0; i < k.length(); i++){
if(num == m.length()) return "YES";
if(k.charAt(i) == m.charAt(num)) num++;
}
if(num == m.length()) return "YES";
return answer;
}
public static void main(String[] args){
Main t = new Main();
Scanner in = new Scanner(System.in);
String m = in.nextLine();
String k = in.nextLine();
in.close();
System.out.print(t.solution(m, k));
}
}
queue 이용
import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;
public class Main {
public String solution(String m, String k){
Queue<Character> que = new LinkedList<>();
String answer = "NO";
for(int i = 0; i < m.length(); i++) que.offer(m.charAt(i));
for(int i = 0; i < k.length(); i++){
if(que.isEmpty()) return "YES";
if(que.peek() == k.charAt(i)){
if(que.remove() == null) return "YES";
}
}
return answer;
}
public static void main(String[] args){
Main t = new Main();
Scanner in = new Scanner(System.in);
String m = in.nextLine();
String k = in.nextLine();
in.close();
System.out.print(t.solution(m, k));
}
}
'오늘의 취준 > 오늘의 코테' 카테고리의 다른 글
[JAVA] 알고리즘 문제풀이 입문 5-8, 6-1번 (0) | 2023.08.02 |
---|---|
[JAVA] 알고리즘 문제풀이 입문 5-8 (0) | 2023.07.28 |
[JAVA] 알고리즘 문제풀이 입문 5-6 (0) | 2023.07.13 |
[JAVA] 알고리즘 문제풀이 입문 5-5 (0) | 2023.07.12 |
[JAVA] 알고리즘 문제풀이 입문 5-4 (0) | 2023.07.10 |