[JAVA] 백준 11654번 : 아스키 코드
·
Computer Science/자료구조와 알고리즘
1. 문제 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. 2. 코드 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); char c = sc.next().charAt(0); System.out.println((int)c); sc.close(); } } 3. 풀이 char형으로 입력받아서 int형으로 출력하기! JAVA는 char형으로 바로 입력받을 수 없다는 것이 문제! sc.next()는 문자열 입력이기 때문에 charAt이라는 메소드를 사용해야 한다 charAt..
[JAVA] 백준 1065번 : 한수
·
Computer Science/자료구조와 알고리즘
1. 문제 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. --- More Details --- 등차수열이란? 연속하는 두 항의 차이가 모두 일정한 수열 식으로 나타내면 다음과 같다. 한수란? 각 자리수들이 등차수열을 이루는 수 한수의 예를 들어보면, 123(공차 1) , 2468(공차 2) , 951(공차 -4), 등등이 있다. 세자리 수 이상인 수는 이렇게 쉽게 한수를 생각해 낼 수 있는데, 한자리수와 두자리수는 한수를 어떻게 구할까? 한자리수와 두자리수는 모두 한수이다. 한자리수인 경우,(1,2,3,4..
[JAVA] 백준 4673번 : 셀프넘버
·
Computer Science/자료구조와 알고리즘
1. 문제 셀프 넘버는 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, 114, 120, 123, 129, 141, ... n을 d(n)의 생..
[JAVA] 백준 4544번 : 평균은 넘겠지
·
Computer Science/자료구조와 알고리즘
1. 문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. 2. 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner..
[JAVA] 백준 8958번 :OX퀴즈
·
Computer Science/자료구조와 알고리즘
1. 문제 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다. "OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다. OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오. 2. 코드 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String test; int score=0;in..
[JAVA] 백준 1546번 : 평균
·
Computer Science/자료구조와 알고리즘
1. 문제 세준이는 기말고사를 망쳤다. 세준이는 점수를 조작해서 집에 가져가기로 했다. 일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다. 그리고 나서 모든 점수를 점수/M*100으로 고쳤다. 예를 들어, 세준이의 최고점이 70이고, 수학점수가 50이었으면 수학점수는 50/70*100이 되어 71.43점이 된다. 세준이의 성적을 위의 방법대로 새로 계산했을 때, 새로운 평균을 구하는 프로그램을 작성하시오. 2. 코드 import java.util.Scanner; import java.util.Arrays; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int ..
[JAVA] 백준 3053번 : 나머지
·
Computer Science/자료구조와 알고리즘
1. 문제 두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오. 2. 코드 import java.util.Scanner; import java.util.HashSet; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); HashSet hs = new HashSet(); for(int i=0;i
[JAVA] 백준 2577번 : 숫자의 개수
·
Computer Science/자료구조와 알고리즘
1. 문제 세 개의 자연수 A, B, C가 주어질 때 A×B×C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오. 예를 들어 A = 150, B = 266, C = 427 이라면 A × B × C = 150 × 266 × 427 = 17037300 이 되고, 계산한 결과 17037300 에는 0이 3번, 1이 1번, 3이 2번, 7이 2번 쓰였다. 첫째 줄에는 A×B×C의 결과에 0 이 몇 번 쓰였는지 출력한다. 마찬가지로 둘째 줄부터 열 번째 줄까지 A×B×C의 결과에 1부터 9까지의 숫자가 각각 몇 번 쓰였는지 차례로 한 줄에 하나씩 출력한다. 2. 코드 import java.util.Scanner; import java.util.stream.*; impo..