백준 1193번 문항 www.acmicpc.net/problem/1193 풀이 denominator 분자, numerator 분모를 정수인 변수로 잡는다. 그리고 for문의 반복 한계점은 백준 문제의 입력값 범위를 사용했다. 백준에서 주어진 표를 보면 한 줄이 증가할 때마다 1씩 증가한다. 1. 몇 번째 줄인지 알아내기 for문에서 i가 1씩 증가할 수 있도록 하고, 증가할 때마다 그 값을 check라는 변수에서 돌면서 차감한다. check의 초기값은 입력값인 n값으로 한다. check 값이 i보다 작거나 같다면, i 줄에 있는 분수인 것을 알 수 있다. 2. 분수구하기 지그재그로 지나간다는 것을 고려하면 분자와 분모 값이 뒤바뀌어야 된다는 것을 알 수 있다. 만약 i 줄이 2의 배수(짝수)라면 분자 값..
백준 5622번 문항 www.acmicpc.net/problem/5622 풀이 Scanner 보다 처리속도가 빠른 Buffered Stream 을 사용해서 코드를 작성했다. 영문자에 해당하는 값이 처리되는 속도(전화 거는데 걸리는 속도)를 반환하여 전체 소요시간을 계산한다. 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 32 33 34 35 import java.io.*; public class string_5622 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new ..
백준 4796번 문항 www.acmicpc.net/problem/4796 풀이 그리디 알고리즘 문제이다. 전체 V일짜리 휴가 중 연속하는 P일을 주기로 한다. 예를 들어, 8일(P) 중 5일(L) 캠핑장 이용이 가능하다고 할 때, 그리디 알고리즘에 따라 전체 20일(V) 휴가를 연속 8일 기준으로 나누어 생각한다. 여기서 중요한 것은 남은 날짜이다. 20일 / 8일 의 나머지는 4일인데 이 경우 L 값보다 작거나 같으면 그 나머지를 모두 캠핑장 이용일자로 더해주면 된다. 하지만! 남은 일자가 P와 L 값의 사이 인 경우도 고려해 줘야 한다. 마지막 경우는 0 0 0 값이 주어지므로 0 값이 주어지면 계산을 종료할 수 있도록 작성한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ..
백준 1110번 문항 www.acmicpc.net/problem/1110 문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어..
백준 9498번 문항 www.acmicpc.net/problem/9498 문제 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 시험 점수가 주어진다. 시험 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 출력 시험 성적을 출력한다. 풀이 if문의 활용 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import java.util.Scanner; public class if_9498 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); i..
백준 2675번 문항 www.acmicpc.net/problem/2675 문제 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다. QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: 이다. 입력 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 반복 횟수 R(1 ≤ R ≤ 8), 문자열 S가 공백으로 구분되어 주어진다. S의 길이는 적어도 1이며, 20글자를 넘지 않는..
백준 11720번 문항 www.acmicpc.net/problem/11720 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. 출력 입력으로 주어진 숫자 N개의 합을 출력한다. 풀이 char 배열로 받은 수를 for문을 활용해서 모두 더한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 import java.util.Scanner; public class string_11720 { public static void main(String[] args) { Scanner sc = new Scanner..
백준 4673번 문항 www.acmicpc.net/problem/4673 문제 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, 이 수를 시작해서 n, d(n), d(d(n)), d(d(d(n))), ...과 같은 무한 수열을 만들 수 있다. 예를 들어, 33으로 시작한다면 다음 수는 33 + 3 + 3 = 39이고, 그 다음 수는 39 + 3 + 9 = 51, 다음 수는 51 + 5 + 1 = 57이다. 이런식으로 다음과 같은 수열을 만들 수 있다. 33, 39, 51, 57, 69, 84, 96, 111, 1..
- gradle
- 호스팅영역
- 정보처리기사 필기
- 기술블로그
- ubuntu
- 웹페이지만들기
- jdbc
- IT 5분 잡학사전
- 실용주의프로그래머
- AWS
- EC2
- gradle build
- spring
- 노마드코더
- 정보처리기사 실기
- java
- filezila
- putty
- 북클럽
- 개발도서
- intellij
- 오늘의코딩
- SQLD
- 배포
- 노개북
- 독서후기
- LifecycleException
- git연동
- JIRA
- 정보처리기사
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |