일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자동 형변환
- BufferedWrite
- jvm
- 예외처리
- OOP
- 백준 알고리즘
- class
- LANG
- 백준
- 연결된 예외
- 객체지향
- 2884
- 프로그래밍
- 현대암호
- 클래스 패스
- 재귀호출기본
- 암호론
- lang package
- 소수판정
- JSP
- 객체
- HTML
- 디렉티브
- try&catch
- java
- 공개키 암호
- bubble-sort
- 알고리즘
- 자료구조
- 형변환 연산자
- Today
- Total
목록java (89)
코드일기장
제목: 그룹 단어 체커 실버5 문제 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에 그룹 단어이지만, aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다. 단어 N개를 입력으로 받아 그룹 단어의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 단어의 개수 N이 들어온다. N은 100보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 단어가 들어온다. 단어는 알파벳 소문자로만 되어있고 중복되지 않으며, 길이는 최대 100이다. 출력 첫째 줄에 그룹 단어의 개수를 출력한다. 예제 입력 1 복사 3 happy..
제목: 직사각형에서 탈출 브론즈3 문제 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 x, y, w, h가 주어진다. 출력 첫째 줄에 문제의 정답을 출력한다. 🔑 코드 case1: 더보기 import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStream..
날짜와 시간을 다루는 클래스는 JDK 1.0에 제공된 Date라는 클래스가 있었다. Date 클래스는 옛날 클래스인지라 기능이 매우 적었다. 그래서 JDK 1.1에 새로 생긴 게 Calendar클래스이다. Calendar 클래스는 Date클래스에 없는 기능들을 새로 추가하였다. 하지만 Calendar클래스는 단점들이 발견되어, JDK 1.8부터 'java.time' 패키지를 새로 만들어 기존에 있던 Calendar클래스를 보안하였다. time패키지를 배우기 전 Calendar클래스는 기존부터 많이 사용하던 클래스라 배워두면 좋다. Date클래스와 Calendar클래스의 대표적인 단점은 날짜와 시간을 같이 다룬다는 단점이 있었다. 이 단점도 time패키지의 등장으로 어느 정도 수월하게 날짜와 시간을 따로 ..
제목: 소인수분해 실버5 문제 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. 출력 N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다. 예제 입력 1 복사 72 예제 출력 1 복사 2 2 2 3 3 예제 입력 2 복사 3 예제 출력 2 복사 3 예제 입력 3 복사 6 예제 출력 3 복사 2 3 예제 입력 4 복사 2 예제 출력 4 복사 2 예제 입력 5 복사 9991 예제 출력 5 복사 97 103 🔑 코드 import java.io.*; public class Main { public static void main(String[] args) throws IOEx..
제목: 크로아티아 알파벳 실버5 문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩 센다. 입력 첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 '-', '='로만 이루어져 있다. 단어는 ..
이진 검색은 선형 검색보다 빠르게 검색할 수 있는 검색 알고리즘이다. 이진 검색(binary search)은 요소가 오름차순 또는 내림차순으로 정렬된 배열에서만 사용할 수 있는 알고리즘이다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("요솟수를 입력하세요: "); int N = sc.nextInt(); int[] arr = new int[N]; System.out.println("오름차순으로 입력하세요."); System.out.print("arr[0]: "); arr[0] = sc.nextInt(..
제목: 일곱 난쟁이 브론즈2 문제 왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다. 아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게도 일곱 난쟁이의 키의 합이 100이 됨을 기억해 냈다. 아홉 난쟁이의 키가 주어졌을 때, 백설공주를 도와 일곱 난쟁이를 찾는 프로그램을 작성하시오. 입력 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. 출력 일곱 난쟁이의 키를 오름차순으로 ..