본문 바로가기

백준 Algorithm54

[백준] CLASS1 11720번 : 숫자의 합 - JAVA [자바] 안녕하세요. 이번에는 백준 11720 숫자의 합 문제를 풀어보려고 합니다. https://www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net Problem N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. Solution import java.io.*; import java.util.*; public class Main { static StringBuilder sb = new StringBuilder(); public static void main(String[] args) throws IOExcepti.. 2023. 9. 26.
[백준] CLASS1 10818번 : 최소, 최대 - JAVA [자바] 안녕하세요. 이번에는 백준 10818 최소, 최대 문제를 풀어보려고 합니다. https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net Problem N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. Solution import java.io.*; import java.util.*; public class Main { static int max = Integer.MIN_VALUE; stat.. 2023. 9. 25.
[백준] CLASS1 2675번 : 문자열 반복 - JAVA [자바] 안녕하세요. 이번에는 백준 2675 문자열 반복 문제를 풀어보려고 합니다. https://www.acmicpc.net/problem/2675 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net Problem 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다. QR Code "alphanum.. 2023. 9. 24.
[백준] CLASS1 2562번 : 최댓값 - JAVA [자바] 안녕하세요. 이번에는 백준 2562 최댓값 문제를 풀어보려고 합니다. https://www.acmicpc.net/problem/2562 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net Problem 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수.. 2023. 9. 23.
[프로그래머스] 덧칠하기 Problem 덧칠하기 Solution 덧필하기는, 정수 n, m과 다시 페인트를 칠하기로 정한 구역들의 번호가 담긴 정수 배열 section 이 매개변수로 주어질 때 롤러로 페인트칠해야 하는 최소 횟수를 리턴해주는 문제이다. 이번 문제는 비교적 간단한 문제였다. 1. 처음 section이 시작되는 위치부터 +m을 한 값까지를 칠해야 하므로 answer = 1로 시작하면서 tempSection은 section [0]을 넣고 시작한다. 2. section의 범위를 반복하면서 tempSection에 범위 m과 -1을 한 값이 section이 넘어가면 페인트를 다시 시작해야하므로, answer++을 해주면서 tempSection을 section으로 다시 초기화해준다. 3. 이렇게 for문을 마무리한 answe.. 2023. 4. 13.
[프로그래머스] 숫자의 표현 Problem 숫자의 표현 Solution 자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return 하는 문제이다. 1. 1 부터 n의 길이의 반만큼 반복하면서 for문 안에 이중 for문으로 연속된 숫자들을 더해준다. 2. 더한 숫자가 n이랑 같으면 asnwer++해준다. 3. 이와 같은 방법을 n의 길이의 반만큼 반복한다. class Solution { public int solution(int n) { //자기 자신은 무조건 포함되므로 1로 시작 int answer = 1; //n의 반보다 크면 그 값은 자기 자신보다 크므로 반값만 for(int i = 1; i 2023. 4. 7.
[프로그래머스] 이진 변환 반복하기 Java 풀이 Problem 이진 변환 반복하기 Solution 0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하는 문제이다. 1. s의 길이와 s에서 replaceAll() 을 사용하여 0을 제거한 후 길이를 구한다. 2. 그 과정을 count해주고, 그 과정에서 0이 제거된 길이도 zeroCount에 카운트해준다. 3. 0을 제거한 길이를 다시 Integer.toBinaryString()을 사용하여 이진법으로 만든다. 4. 위의 조건을 반복하여 s 가 "1"이 될 때까지 반복한다. class Solution { public int[] solution(St.. 2023. 4. 6.
[프로그래머스] 다음 큰 숫자 Java 풀이 Problem 다음 큰 숫자 Solution 주어진 조건을 만족하는 큰 숫자를 구하면 되는 문제이다. 1. 기존에 주어진 숫자를 Integer.toBinaryString() 함수를 사용해서 2진법으로 만든다. 2. 2진법에서 1의 숫자를 카운트한다. 3. 주어진 숫자를 ++하면서 위의 1,2번 방법을 반복하면서 1의 숫자가 같은 값을 찾는다. 4. 조건을 만족하는 값을 출력한다. class Solution { public int solution(int n) { int answer = 0; // 10진법을 2진법으로 만듬 String str = Integer.toBinaryString(n); int count = 0; // 주어진 조건의 1의 갯수를 카운트한다 for(int i = 0; i < str.le.. 2023. 4. 5.
반응형