본문 바로가기
728x90
반응형

java230

[백준/java] 2292번: 벌집 문제 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다. 입력 첫째 줄에 N(1 ≤ N ≤ 1,000,000,000)이 주어진다. 출력 입력으로 주어진 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나는지 출력한다. ※ 도출 과정 cnt : 1 1 cnt : 2 2 3 4 5 6 7 cnt : 3 8 9 10 11 12 13 14 15 16 17 18.. 2021. 4. 16.
[백준/java] 9020번: 골드바흐의 추측 - 에라스토테네스의 체 사용 안녕하세요 이번 포스팅은 백준 문제 중 골드바흐의 추측을 풀어보겠습니다. 문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아니다. 골드바흐의 추측은 유명한 정수론의 미해결 문제로, 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다는 것이다. 이러한 수를 골드바흐 수라고 한다. 또, 짝수를 두 소수의 합으로 나타내는 표현을 그 수의 골드바흐 파티션이라고 한다. 예를 들면, 4 = 2 + 2, 6 = 3 + 3, 8 = 3 + 5, 10 = 5 + 5, 12 = 5 + 7, 14 = 3 + 11, 14 = 7 + 7이다. 10000보다 작거.. 2021. 4. 14.
[백준/java] 11653번: 소인수분해 - 에라스토테네스의 체 사용 안녕하세요 이번 포스팅은 백준 문제 중 소인수분해를 풀어보겠습니다. 문제 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. 출력 N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다. 이번 문제는 에라스토테네스의 체를 사용해서 풀었습니다. 에라스토테네스의 체를 이용하면 소수를 빨리 구할 수가 있습니다. package boj; import java.util.List; import java.util.ArrayList; import java.util.Scanner; public class Factorization { public static void main(String[].. 2021. 4. 13.
[백준/java] 2798번: 블랙잭(Black Jack) - 브루트 포스(Brute Force) 안녕하세요 이번 포스팅은 백준 문제 중 블랙잭을 풀어보겠습니다. 문제 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 있다. 한국 최고의 블랙잭 고수 김정인은 새로운 블랙잭 규칙을 만들어 상근, 창영이와 게임하려고 한다. 김정인 버전의 블랙잭에서 각 카드에는 양의 정수가 쓰여 있다. 그 다음, 딜러는 N장의 카드를 모두 숫자가 보이도록 바닥에 놓는다. 그런 후에 딜러는 숫자 M을 크게 외친다. 이제 플레이어는 제한된 시간 안에 N장의 카드 중에서 3장의 카드를 골라야 한다. 블랙잭 변형 게임이기 때문에, 플레이어가 고른 카드의 합은 M을 넘지 않으면서 M과 최대한 가깝게.. 2021. 4. 12.
[Kotlin] 자바 코드를 코틀린 코드로 자동 변환 안녕하세요. 이번 포스팅은 자바 소스코드를 코틀린코드로 자동변환하는 것을 다뤄보겠습니다. 이 기능은 안드로이드 스튜디오에서 자동으로 지원하는데요, 이 안드로이드 스튜디오에서... 자바 코드를 손쉽게 코틀린으로 변환이 가능합니다. 그냥 자바 소스코드를 복사, 붙여넣기 하면 되는데요 drcode-devblog.tistory.com/109 [프로그래머스/java] 이진 변환 반복하기 이번 포스팅은 프로그래머스 Level 2 월간 코드 챌린지 문제인 이진 변환 반복하기 문제를 풀어보겠습니다. 이번 문제는 Level 2 치고 쉬웠습니다. 주어진 문자열에서 0을 제거하고, 0이 제거된 문자 drcode-devblog.tistory.com 이 소스 코드를 코틀린 소스로 변환해보겠습니다. package binaryCo.. 2021. 4. 11.
[백준/java] 2750번 : 수 정렬하기 (버블정렬) 안녕하세요. 이번 포스팅은 백준 2750번 문제인 수 정렬하기를 풀어보겠습니다 버블정렬을 이용해서 풀었는데 시간 복잡도가 O(n²)인 정렬 알고리즘입니다. 문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. package boj; import java.util.Scanner; public class NumberSort { public static void main(String[] args) { Scan.. 2021. 4. 9.
728x90
반응형