백준 문자열
[백준, BOJ 2607] 비슷한 단어 (java)
https://www.acmicpc.net/problem/2607메모리: 14,132 KB , 시간: 100 ms사용 알고리즘: 구현, 문자열import java.io.BufferedReader;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); // 기준이 되는 문자열 char[] first = br.r..
[백준, BOJ 6443] 애너그램 (java)
https://www.acmicpc.net/problem/6443메모리: 34,256 KB , 시간: 496 ms사용 알고리즘: 백트래킹, 문자열입력받은 문자열에서 사용한 문자의 개수를 담는 visited 배열을 만들어,인덱스에 해당하는 문자가 몇 개 사용됐는지 체크해준다. combi 메소드에서 백트래킹을 통해 현재 사용할 수 있는 문자 중 사전 순으로 빠른 문자부터 스택에 담아주고,사용할 수 있는 문자 개수를 줄여주며 애너그램 조합을 구해주는 방식을 사용했다.import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.Stack;public class Main { static char[] string; stat..
[백준, BOJ 1414] 불우이웃돕기 (java)
https://www.acmicpc.net/problem/1414 1414번: 불우이웃돕기 첫째 줄에 컴퓨터의 개수 N이 주어진다. 둘째 줄부터 랜선의 길이가 주어진다. i번째 줄의 j번째 문자가 0인 경우는 컴퓨터 i와 컴퓨터 j를 연결하는 랜선이 없음을 의미한다. 그 외의 경우는 랜선 www.acmicpc.net 메모리: 14,388 KB , 시간: 136 ms 사용 알고리즘: 그래프 이론, 최소 스패닝 트리, 문자열 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.PriorityQueue; public class Main { static int[] parent; public static void mai..
[백준, BOJ 2866] 문자열 잘라내기 (java)
https://www.acmicpc.net/problem/2866 2866번: 문자열 잘라내기 첫 번째 줄에는 테이블의 행의 개수와 열의 개수인 R과 C가 주어진다. (2 ≤ R, C ≤ 1000) 이후 R줄에 걸쳐서 C개의 알파벳 소문자가 주어진다. 가장 처음에 주어지는 테이블에는 열을 읽어서 문자 www.acmicpc.net 메모리: 305,588 KB , 시간: 1,748 ms 사용 알고리즘: 자료 구조, 해시를 사용한 집합과 맵, 문자열 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.HashSet; import java.util.StringTokenizer; public class Main { pu..
[백준, BOJ 16890] 창업 (java)
https://www.acmicpc.net/problem/16890 16890번: 창업 입력은 길이가 N(1 ≤ N ≤ 300,000)인 문자열 두 개로 이루어져 있다. 모든 문자열은 알파벳 소문자로만 이루어져 있다. 첫 번째 줄에 주어지는 문자열은 구사과가 고른 문자이고, 두 번째 줄에 주 www.acmicpc.net 메모리: 23,320 KB , 시간: 324 ms 사용 알고리즘: 그리디 알고리즘, 정렬, 문자열 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; public class Main { public static void main(String[] args) throws Excepti..
[백준, BOJ 2671] 잠수함식별 (java)
https://www.acmicpc.net/problem/2671 2671번: 잠수함식별 입력에 들어있는 스트링을 읽고, 이것이 잠수함의 엔진소리를 나타내는 스트링인지 아니면 그냥 물속의 잡음인지를 판정한 후, 잠수함의 엔진 소리에 해당하는 스트링이면 "SUBMARINE"을 출력하고 www.acmicpc.net 메모리: 14,080 KB , 시간: 124 ms 사용 알고리즘: 문자열 import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(n..
[백준, BOJ 3107] IPv6 (java)
https://www.acmicpc.net/problem/3107 3107번: IPv6 첫째 줄에 올바른 IPv6 주소가 주어진다. 이 주소는 최대 39글자이다. 또한, 주소는 숫자 0-9, 알파벳 소문자 a-f, 콜론 :으로만 이루어져 있다. www.acmicpc.net 메모리: 14,060 KB , 시간: 124 ms 사용 알고리즘: 구현, 문자열 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new ..
[백준, BOJ 15927] 회문은 회문아니야!! (java)
https://www.acmicpc.net/problem/15927 15927번: 회문은 회문아니야!! 팰린드롬이란 앞으로 읽으나 뒤로 읽으나 같은 문자열을 말한다. 팰린드롬의 예시로 POP, ABBA 등이 있고, 팰린드롬이 아닌 것의 예시로 ABCA, PALINDROME 등이 있다. 같은 의미를 가지는 여러 단어들을 www.acmicpc.net 메모리: 19,460 KB , 시간: 216 ms 사용 알고리즘: 애드 혹, 문자열 내 생각 팬린드롬은 모든 문자열이 같지 않은 이상 문자 하나만 빠져도 팰린드롬이 아니라는 것만 알고 있으면 쉽게 풀 수 있는 문제였다... 이 생각을 못해서 뻘 짓 엄청 함. import java.io.BufferedReader; import java.io.InputStreamR..
[백준, BOJ 20210] 파일 탐색기 (java)
https://www.acmicpc.net/problem/20210 20210번: 파일 탐색기 첫 줄에 문자열의 개수 N(2 ≤ N ≤ 10,000)이 주어진다. 그 다음 N줄에 정렬할 문자열이 한 줄에 하나씩 주어진다. 모든 문자열의 길이는 100 이하이며, 알파벳 대소문자와 숫자로만 이루어져 있다. www.acmicpc.net 메모리: 309,456 KB , 시간: 1,188 ms 사용 알고리즘: 구현, 정렬, 문자열 문제 해결할 때 신경 써줘야 하는 것들 문자열 정렬을 위해서는 정렬 알고리즘을 사용해주어야 한다. -> quick sort 구현하여 사용. 정렬을 위해서는 두 문자열을 비교하여 어느 문자가 앞에 와야 할지 결정해야 한다. -> compare 메서드에 이를 구현함. 문자열을 비교할 때, ..
[백준, BOJ 17609] 회문 (java)
https://www.acmicpc.net/problem/17609 17609번: 회문 각 문자열이 회문인지, 유사 회문인지, 둘 모두 해당되지 않는지를 판단하여 회문이면 0, 유사 회문이면 1, 둘 모두 아니면 2를 순서대로 한 줄에 하나씩 출력한다. www.acmicpc.net 최신 풀이 import java.io.BufferedReader; import java.io.InputStreamReader; public class BOJ17609 { static char[] string; public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(Syste..