본문 바로가기

전체 글177

[백준] 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.
[오류 해결] No matching variant of com.android.tools.build:gradle:7.4.1 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well as attribute '.. 안드로이드 스튜디오를 통해 처음 프로젝트를 생성 시 생기는 오류를 해결해보려고 한다. No matching variant of com.android.tools.build:gradle:7.4.1 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '7.5' but: 위와 같이 오류가 발생되는 원인은 JDK버전이 낮아 해당하는 Gradle tool을 빌드하지 못해서 생기는 .. 2023. 8. 28.
[프로그래머스] 덧칠하기 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 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 주세요. 성공적으로 수행 가능하면 1을, 아닐 경우 0을 리턴해주는 문제이다. 이번 문제는 Stack을 사용해서 문제에 접근해야한다. Stack이 비어있지 않고, Stack의 맨 위의 값과 같으면 pop을 시키고 아니면 Stack에 push를 넣으면서 s의 길이만큼 반복하면 된다. 그다음에 마지막으로 Stack이 비어있으면 다 .. 2023. 4. 8.
[프로그래머스] 숫자의 표현 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] BitCount() 메소드 알아보기 BitCount() 이번 포스팅에는 알고리즘 문제를 풀다가 BitCount()에 대하여 알게 되어서 간단히 작성하려고 한다. BitCount() 메소드는 주어진 정수의 2진 표현에서 1의 개수를 세는 메소드이다. 예를 들어, 10(10진수)은 1010(2진수)으로 표현이 된다. 이 경우 bitCount(10)은 2가 된다. 아래의 사용법을 보면 이해가 편할 것이다. int count = Integer.bitCount(10); System.out.print(count); // 출력결과 : 2 long l = 123456789L; int bitCount = Long.bitCount(l); System.out.println(bitCount); // 출력결과 : 16 예를 보면 int와 long 타입에서 모두 .. 2023. 4. 5.
반응형