문제 출처: https://www.acmicpc.net/problem/2671 2671번: 잠수함식별 입력에 들어있는 스트링을 읽고, 이것이 잠수함의 엔진소리를 나타내는 스트링인지 아니면 그냥 물속의 잡음인지를 판정한 후, 잠수함의 엔진 소리에 해당하는 스트링이면 "SUBMARINE"을 출력하고 www.acmicpc.net 1. 문제 접근방식 - 며칠전에 풀었던 정규표현식 패턴 일치 여부 판단하는 문제와 접근방식은 같다. 2. 내가 푼 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class boj2671 { public static void main(String[] ..
문제 출처: https://www.acmicpc.net/problem/12904 12904번: A와 B 수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수 www.acmicpc.net 1. 문제 접근방식 - 문제에 주어진대로 S를 받아 처음부터 진행하는 방식이 아닌 T의 문자를 제거하는 방식대로 생각해보았다. T의 마지막 문자가 A일 경우 A를 제거하고 B일 경우 B를 제거하고 역순으로 뒤집는 방식이다. 이렇게 하여 S와 길이를 같게 하고 S와 T가 같아지는지 판단하는 것이다. 2. 내가 푼 코드 import java.io.Bu..
문제 출처: https://www.acmicpc.net/problem/1013 1013번: Contact 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 전파를 표현하는, { 0, 1 }만으로 이루어진 문자열이 공백 없이 주어진다. 문자열 길이는 (1 ≤ www.acmicpc.net 1. 문제 접근방식 - 주어진 패턴에 맞는지 확인하는 것이 가장 핵심으로 파악하고 자바에서 지원해주는 메서드를 찾아보았다. 역시 Matcher클래스에 matches() 메서드가 있었다. Matcher 클래스 주요 메서드 - matches(): 대상 문자열과 패턴이 일치할 경우 true - find(): 대상 문자열과 패턴이 일치할 경우 true를 반환하고 위치로 이동 - s..
문제 출처: https://www.acmicpc.net/problem/1120 1120번: 문자열 길이가 N으로 같은 문자열 X와 Y가 있을 때, 두 문자열 X와 Y의 차이는 X[i] ≠ Y[i]인 i의 개수이다. 예를 들어, X=”jimin”, Y=”minji”이면, 둘의 차이는 4이다. 두 문자열 A와 B가 주어진다. 이때, A의 www.acmicpc.net 1. 문제 접근방식 - 문자열이 두개 주어졌을 때 길이를 맞추기 위해 가장 최소의 문자를 쓸 수 있는 자리를 골라야한다. 최소의 개수를 구하기 위해서는 문자열 중 긴 문자열을 돌며 짧은 문자열과 가장 같은 문자가 많은 자리를 정하면 된다. 2. 내가 푼 코드 import java.io.BufferedReader; import java.io.IOE..