백준 2941번 www.acmicpc.net/problem/2941 풀이 BufferedReader 를 이용해서 풀이 시간을 단축할 수 있었다. 각 경우에 수를 나누어 생각하면 되는데 입력받은 문자열에서 크로아티아 알파벳이 나오면 cnt 를 더해준다. 크로아티아 알파벳을 찾는 방법은 특정 문자 뒤에 나오는 문자가 크로아티아 알파벳에 해당하는지 && 조건으로 알아본다. 이 문제에서 주의할 점은 1. 크로아티아 알파벳이 2개의 문자로 되어 있는 경우와 3개의 문자로 되어 있는 경우가 있으므로 이를 구분하여 for문이 적용될 수 있도록 해야 한다. 2. if(ch=='c' && (a.charAt(i+1)=='=' || a.charAt(i+1)=='-')) 와 같이 비교 연산자의 순위도 고려하여 괄호로 구분을 ..
백준 1152번 www.acmicpc.net/problem/1152 풀이 입력된 값을 문자열로 받고, 그 문자열을 charAt() 을 이용해서 한 문자씩 ' ' 공백이 맞는지 확인한다. 여기서 주의할 점은 공백이 앞이나 뒤에 올 수 있다는 것이다. 다시 생각하면 앞 뒤 공백이 없다면 문자열에 있는 공백의 수 +1 값이 단어의 수가 된다. 따라서 공백이 나올 때마다 cnt 로 숫자를 세어준다. 그리고 결과 값에서 +1 을 해준다. 마지막으로 앞서 생각한 주의점을 고려해주는데, 앞 뒤 공백 값은 단어 수에 영향을 미치면 안 되므로 그 경우에는 cnt 를 차감해준다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 import java.util.*; pub..
백준 3052번 www.acmicpc.net/problem/3052 풀이 Collection 두 개를 이용해서 input arraylist 에는 입력값을 받고, remainder arraylist 에는 42로 나눈 나머지 값을 받았다. 중첩 for문을 이용해서 remainder 의 인덱스 값이 그 후의 인덱스 값과 동일한 경우에는 cnt를 증가시켰다.이 때, 입력값과 동일하게 나올 수 있는 나머지 값이 총 10개 이므로 10개에서 이 cnt 를 제외한 값을 정답으로 출력했다.(구하고자 하는 값은 서로 다른 나머지 수이기 때문에) 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 import java.util.*..
백준 2562번 www.acmicpc.net/problem/2562 풀이 Collections.max() 메서드를 이용했다. Collection으로 할 때 배열의 범위를 정하지 않아도 되서 이 문제를 풀 때 효율적이었던 것 같다. 자료를 입력받을 때는 .add() 메서드를, 자료를 가져올 때는 .get() 메서드를 활용한다. 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 import java.util.*; public class Array_2562 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); List listA..
백준 10818번 www.acmicpc.net/problem/10818 풀이 Collection 으로 문제를 풀이했다. 정수형의 arraylist 를 만들어 배열을 받았고, Collection.max() 와 Collection.min() 메서드를 사용해서 최대, 최소를 구했다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 import java.util.*; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); int x = sc.nextInt(); List listArr = new ArrayList(); for (int i=0; i
백준 1546번 www.acmicpc.net/problem/1546 풀이 여기서 주의할 점은 double 타입으로 계산해야 한다는 점이다. 문제에서 알 수 있듯이 오차의 범위는 값은 반드시 소수 2자리까지 출력해야 하는 것을 뜻하는 것이 아니라는 것을 알아야 한다. double 타입의 배열로 점수를 받고 가장 최대값을 구한다. 이 최대값과 각각의 점수가 이미 double 타입으로 초기화 되어 있으므로 계산해서 나온 값 sum 역시 double 타입이다. 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 import java.util.*; public class Array_1546 { public static void main(..
백준 1110번 www.acmicpc.net/problem/1110 풀이 두 자리 정수의 합을 일의 자리로, 원래 두 자리 정수를 십의 자리수로 두는 문제이다. 계속해서 원래의 값이 나올 수 있도록 해야 하므로 do-while 문을 이용해서 푼다. 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 import java.util.Scanner; public class while_1110 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int input = sc.nextInt(); int x = input; int cyc..
백준 9498번 문항 www.acmicpc.net/problem/9498 풀이 입력한 값이 문제에서 주어진 범위에 해당할 경우에는 범위에 맞는 학점을 출력해준다. 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); int x = sc.nextInt(); if(90
- 정보처리기사 필기
- 호스팅영역
- spring
- AWS
- gradle build
- IT 5분 잡학사전
- ubuntu
- EC2
- jdbc
- 북클럽
- 정보처리기사
- git연동
- gradle
- 정보처리기사 실기
- java
- 배포
- 노마드코더
- 노개북
- filezila
- JIRA
- LifecycleException
- 기술블로그
- 웹페이지만들기
- intellij
- 오늘의코딩
- 개발도서
- 독서후기
- putty
- 실용주의프로그래머
- SQLD
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |