728x90
반응형
SMALL

Algorithm/백준알고리즘 48

[백준알고리즘] 문자열 6단계 -1152번 단어의 개수(JAVA)

📌문제 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 📌입력 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열은 공백으로 시작하거나 끝날 수 있다. 📌출력 첫째 줄에 단어의 개수를 출력한다. 📌코드 /* 1. 첫 줄에 문자열을 입력받는다. 2. 이 문자열은 대소문자로 된 영단어가 입력되는데, 구분은 공백으로 구분된다. 3. 주의해야 할 점은 공백은 연속으로 나오지는 않지만 공백이 문자의 앞뒤에 있을 수도 있다..

[백준알고리즘] 문자열 5단계 -1157번 단어 공부(JAVA)

📌문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 📌입력 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 📌출력 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. 📌코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int[] arr = new int[26]; //알파벳의 ..

[백준알고리즘] 문자열 4단계 -2675번 문자열 반복(JAVA)

📌문제 문자열 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글자를 넘지 않는다. 📌출력 각 테스트 케이스에 대해 P를 출력한다. 📌코드 impor..

[백준알고리즘] 문자열 3단계 -10809번 알파벳 찾기(JAVA)

📌문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 📌입력 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 📌출력 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. ※ 주 의 ※ length는 상수고, length()는 메소드다. 배열에서 사용 가능한 length는 최초 ..

[백준알고리즘] 문자열 2단계 -11720번 숫자의 합(JAVA)

📌문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 📌입력 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. 📌출력 입력으로 주어진 숫자 N개의 합을 출력한다. 📌코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); // 숫자의 개수를 입력받는다. String st = sc.next(); // String 객체 st를 선언하고 입력받는다. // 여기서 주의해야 할 점이 숫자를 정수가 아닌 String형식으로..

[백준알고리즘] 문자열 1단계 -11654번 아스키 코드(JAVA)

📌문제 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. 📌입력 알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다. 📌출력 입력으로 주어진 글자의 아스키 코드 값을 출력한다. 📌코드 import java.util.*; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); String asci = sc.next(); // 숫자나 문자를 입력받아야 하기에 입력값을 string 형식으로 받는다. int result = asci.charAt(0); // charAt을 통해 문자열을 잘라 문자로 변환한다...

[백준알고리즘] 함수 3단계 -1065번 한수(JAVA)

📌문제 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 📌입력 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. ※ 참 고 ※ 등차수열의 개념 ↓ https://www.acmicpc.net/board/view/25689 📌출력 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. 📌코드 import java.util.*; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(S..

[백준알고리즘] 함수 2단계 -4673번 셀프 넘버(JAVA)

📌문제 셀프 넘버는 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)의 생성자..

[백준알고리즘] 함수 1단계 -15596번 정수 N개의 합(JAVA)

📌문제 정수 n개가 주어졌을 때, n개의 합을 구하는 함수를 작성하시오. 작성해야 하는 함수는 다음과 같다. Java: long sum(int[] a); (클래스 이름: Test) a: 합을 구해야 하는 정수 n개가 저장되어 있는 배열 (0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000) 리턴값: a에 포함되어 있는 정수 n개의 합 ※ 주의 ※ main을 구하는 것이 아니라, 함수만 구현하는 것이다. 매개변수의 개념을 확실히 하기! 📌코드 public class Test { long sum(int[] a) { // 함수 sum에다가 값을 입력받아 매개변수인 배열a[]에 저장한다. long ans = 0; // 변수 ans를 선언하고, 0으로 초기화 for(int i =0; i

[백준알고리즘] 1차원 배열 7단계 -4344번 평균은 넘겠지(JAVA)

📌문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 📌입력 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 📌출력 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. ※ 참고 ※ 소수점 셋째자리까지 출력하기 위해서는 printf() 를 써서 %.3f 으로 출력 포멧을 지정해주어야 한다. 또한 printf 에서 "%" 라는 문자를 출력을 하려면 %% 로 적어주어야 % 라는 문자가 출력된다. 📌코드..

728x90
반응형
LIST