본문 바로가기

알고리즘

(56)
[프로그래머스] 없는 숫자 더하기 https://programmers.co.kr/learn/courses/30/lessons/86051 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 자바 배열 Arrays.sort(arr); Arrays.toString(arr) // 배열로 비교해서 했으나 실패! import java.util.Arrays; import java.util.stream.Stream; class Solution { public int solution(int[] numbers) { ..
[프로그래머스] 나머지가 1이 되는 수 찾기 https://programmers.co.kr/learn/courses/30/lessons/87389 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입 programmers.co.kr class Solution { public int solution(int n) { int answer = 0; int temp = n-1; System.out.println("temp: "+temp); for(int i=temp; i>1; i--){ // for문을 작아지게 하는게 어려웠다?ㅋㅋ if(temp % i..
[프로그래머스] 기능개발 https://programmers.co.kr/learn/courses/30/lessons/42586?language=java 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr import java.util.LinkedList; import java.util.Queue; import java.util.Iterator; class Solution { public int[] solution(int[] progresses, int[] speeds) { int[] answer = {}; Queue queue =..
[백준] 팩토리얼 https://www.acmicpc.net/submit/10872 로그인 www.acmicpc.net import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); int N = in.nextInt(); in.close(); int sum = factorial(N); System.out.println(sum); }// main end public static int factorial(int N){ if(N
[알고리즘] 시간이 없을 때 해시 정렬 완전탐색 깊이/너비 우선탐색 문자열 맵 해시 1) 두개의 배열을 비교 코딩테스트 연습 해시 완주하지 못한 선수 https://programmers.co.kr/learn/courses/30/lessons/42576 해시맵에 배열1을 양수값 넣는다. 배열2도 음수값으로 넣는다. 값>0 보다 크면 키-값은 불일치하는 키-값이다. hm.put(키, 값) // 키, 값 넣는다 hm.getOrDefault(키, 기본값) // 값 가져온다 hm.get(키) // 값 가져온다 import java.util.HashMap; class Solution { public String solution(String[] participant, String[] completion) { String answer = ""; ..
[프로그래머스][정렬]가장 큰 수 https://programmers.co.kr/learn/courses/30/lessons/42746 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr import java.util.*; class Solution { public String solution(int[] numbers) { String answer = ""; String[] str = new String[numbers.length]; for(int i=0; i sort() ---> ..
[프로그래머스][정렬][k번째 수] https://programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr import java.util.*; class Solution { public int[] solution(int[] array, int[][] commands) { int[] answer = new int[commands.length]; int start; int end; int position; for(int i=0; i
[프로그래머스][해시] 완주하지 못한 선수 https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 배열로 풀이 --> 실패 package com.company; import java.util.ArrayList; import java.util.Arrays; public class programmers { public static void main(String[] args) { //https://programmers.co.kr/learn/co..