문제설명 소스코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Boj_10986 { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(..
문제설명 소스코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Boj_11660 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; StringBuilder sb = new StringBuilder(); String NM = br...
문제설명 소스코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Boj_11659 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String NM = br.readLine(); StringTokenizer st = new StringTokenizer(NM); Str..
문제설명 소스코드import java.util.Scanner;public class Boj_5988 { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); if(N != 0){ for (int i = 0; i 설명가장 주의해야 할 점은 K의 범위가 10^60이라는 점이다.따라서 숫자로 처리하기 보다는 문자로 처리해야한다.
문제설명 소스코드 import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { static public boolean KMP(String str, String pattern) { int LPS[] = new int[pattern.length()]; //LPS 배열 생성 int index = 0; //IDX, 찾을 문자열의 비교 인덱스를 뜻하기도 하며, 접두사와 접미사가 같을 때 최대 길이를 뜻하기도 함 for (int i = 1; i < pattern.length(); i++) //LPS배열의 값을 입력 { if (pattern.charAt(i) == pattern.charAt(index)) LPS[i] = ++i..
문제설명 소스코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; public class Main { static public ArrayList KMP(String str, String pattern) { ArrayList idxList = new ArrayList(); //찾는 문자열을 발견시 해당 문자열의 시작 인덱스를 저장하는 리스트 int LPS[] = new int[pattern.length()]; //LPS 배열 생성 int index = 0; //IDX, 찾을 문자열의 비교 인덱스를 뜻하기도 하며, 접두사와 접미사가 같을 때 최대 길이를 뜻하기도 함 for (int i = 1..
문제설명 소스코드 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)); StringBuilder sb = new StringBuilder(); String input = br.readLine(); String[] arr = {"000","001","010","011","100","101","110","111"}; for(int i = 0; i < input.length(); ..
문제설명 소스코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static StringBuilder sb = new StringBuilder(); static Node root = new Node(null, null, null); //루트노드 static class Node //노드 클래스 { String value; //현재 노드의 값을 저장 Node left; //왼쪽 자식 노드의 레퍼런스를 저장 Node right; //오른쪽 자식 노드의 레퍼런스를 저장 Node(String value, Node left, Node right) { ..