본문 바로가기
반응형

전체 글100

[프로그래머스] 로또의 최고 순위와 최저 순위 - Java 문제 설명 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호가 일치 3 4개 번호가 일치 4 3개 번호가 일치 5 2개 번호가 일치 6(낙첨) 그 외 로또를 구매한 민우는 당첨 번호 발표일을 학수고대하고 있었습니다. 하지만, 민우의 동생이 로또에 낙서를 하여, 일부 번호를 알아볼 수 없게 되었습니다. 당첨 번호 발표 후, 민우는 자신이 구매했던 로또로 당첨이 가능했던 최고 순위와 최저 순위를 알아보고 싶어 졌습니다. 알아볼 수 없는 번호를 0으로 표기하기로 하고, 민우가 구매한 로또 번호 6개가 44, 1, 0, 0, 31 25라고 가정해보겠습니다... 2021. 5. 3.
[프로그래머스] 최솟값 만들기 - Java 문제 설명 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.) 예를 들어 A = [1, 4, 2] , B = [5, 4, 4] 라면 A에서 첫번째 숫자인 1, B에서 첫번째 숫자인 5를 뽑아 곱하여 더합니다. (누적된 값 : 0 + 5(1x5) = 5) A에서 두번째 숫자인 4, B에서 세번째 숫자인 4를 뽑아 곱하여 더합니다. (누적된 값 : 5 + 16(4x4) = 21.. 2021. 5. 3.
[백준] 11050번: 이항 계수 1 - Java 설명 자연수N과 정수K가 주어졌을 때 이항 계수 (NK)를 구하는 프로그램을 작성하시오. 입력 첫째 줄에N과K가 주어진다. (1 ≤ N ≤ 10, 0 ≤ K ≤ N) 출력 (NK)를 출력한다. 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int n = scan.nextInt(); // 자연수 N int k = scan.nextInt(); // 정수 K int result = factorial(n) / (factorial(n - k) * factorial(k)); // 이항 계수 (NK) System.out.println(.. 2021. 5. 3.
[백준] 4344번: 평균은 넘겠지 - Java 설명 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 입력 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 출력 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(Syste.. 2021. 5. 1.
[Java] 표준국어대사전 오픈 API 사용하기 - 2(파싱) howbeautifulworld.tistory.com/19 [Java] 표준국어대사전 오픈 API 사용하기 - 1 stdict.korean.go.kr/openapi/openApiInfo.do 국립국어원 표준국어대사전 오픈 API 1. 표준국어대사전 오픈 API 서비스 소개 표준국어대사전 오픈 API는 검색 플랫폼을 외부에 공개하여 다양하고 재미있는 서비 howbeautifulworld.tistory.com 1편에서는 API를 호출해봤습니다. 2편에서는 파싱을 할 것입니다. import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org... 2021. 4. 22.
[프로그래머스] 3진법 뒤집기 - Java 문제 설명 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 문제 풀이 import java.lang.StringBuffer; class Solution { public int solution(int n) { int answer = 0; // 3진법 String result = ""; while(n > 0) { result = (n % 3) + result; n /= 3; } // 뒤집기 StringBuffer sb = new StringBuffer(result); result = sb.reverse().toString(); // 10진법 answer = Integer.parseInt(r.. 2021. 4. 21.
[프로그래머스] 2016년 - Java 문제 설명 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요. 문제 풀이 class Solution { public String solution(int a, int b) { String answer = ""; String[] day = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"}; int[] month = {31, 29, 31, 30, .. 2021. 4. 19.
[프로그래머스] 정수 제곱근 판별 - Java 문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 문제 풀이 class Solution { public long solution(long n) { long answer = -1; for(long i = 1; i 2021. 4. 16.
[프로그래머스] 음양 더하기 - Java 문제 설명 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. 문제 풀이 class Solution { public int solution(int[] absolutes, boolean[] signs) { int answer = 0; for(int i = 0; i < absolutes.length; i++) { if(signs[i]) { answer += absolutes[i]; } else { answer -= absolutes[i]; } } return answer; } } programmers.co.. 2021. 4. 16.
728x90
반응형