알고리즘 47

[SWEA] 1954. 달팽이 숫자

https://swexpertacademy.com/main/main.do? SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com SWEA 1954번 DFS를 이용해서 풀었다. 기초중에 기초인데, DFS 사용을 어려워해서 걱정이다. import java.util.Scanner; public class P1954 { static int n; static int[][] a; static int[] dx={-1,0,1,0}, dy={0,1,0,-1}; public static void main(String[] args){ Scanner sc = new Scanner(System.in); int T = sc.nextInt()..

알고리즘/SWEA 2022.11.07

[SWEA] 1928. Base64 Decoder

https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com SWEA 1928번 인코딩 Base64.getEncoder().encodeToString(원문) 디코딩 Base64.getDecoder().decode(인코딩된 스트링) import java.util.Base64; import java.util.Scanner; public class P1928 { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for(int t=1..

알고리즘/SWEA 2022.11.07

[SWEA] 1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기

https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com SWEA 1204번 1000명의 학생의 점수를 입력 받아 점수 중 최빈수를 구하는 문제 점수는 0~100점이기 때문에 101 사이즈의 배열을 만들어서 해당 점수 값을 증가시킴 import java.util.Scanner; public class P1204 { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for(int t=1; t

알고리즘/SWEA 2022.11.07

[프로그래머스]연습문제>제일 작은 수 제거하기 Java

https://programmers.co.kr/learn/courses/30/lessons/12935 코딩테스트 연습 - 제일 작은 수 제거하기 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1 programmers.co.kr arr 길이가 1보다 작거나 같은 경우는 answer는 -1만 리턴. 나의 코드 public static int[] solution(int[] arr) { int min = arr[0]; // 초기 최소값 int index = 0; // 최소값 인덱스 if(arr.length

[알고리즘] 합병정렬(Merge sort), 힙정렬(Heap sort) | T아카데미

-SKplanet Tacademy의 컴퓨터 알고리즘 초급 강의를 듣고 정리한 내용입니다- https://tacademy.skplanet.com/live/player/onlineLectureDetail.action?seq=83 컴퓨터 알고리즘 초급 | T아카데미 온라인강의 컴퓨터 알고리즘은 성공적인 프로그래밍을 위한 필수적인 과목입니다. 본 과정에서는 컴퓨터 알고리즘의 정의에 대해 학습하고 필요성을 인식하며 이에 대한 기본내용을 학습합니다. 또.. tacademy.skplanet.com 합병정렬 - 합병을 이용한 정렬 알고리즘 - 이미 정렬되어 있는 2개의 배열을 비교하여 작은 값을 새로운 배열에 넣음 - 수행시간 O(nlgn) Merge A B C Step 0 1 5 6 8 2 4 7 9 1 Step 1..

알고리즘 2021.06.30

[프로그래머스]연습문제>2016년 Java

https://programmers.co.kr/learn/courses/30/lessons/12901 코딩테스트 연습 - 2016년 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까 programmers.co.kr 2016년 1월 1일은 금요일이라는 힌트를 가지고 시작했다. 금요일이라는 힌트 때문에 day 배열을 "FRI","SAT","SUN","MON","TUE","WED","THU" 순으로 작성했다. 2016년은 윤년이라고 했으므로 2월은 29일까지 있다. result 변수에 a달 전까지의 date를 더해준다. 그리고 result..

[프로그래머스]Summer/Winter Coding(~2018)>예산 Java

https://programmers.co.kr/learn/courses/30/lessons/12982 코딩테스트 연습 - 예산 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 programmers.co.kr 부서별로 신청한 금액이 들어있는 배열 d를 오름차순 정렬을 하고 차례로 합해서 예산과 비교한다. 합할 때마다 지원할 수 있는 부서 수를 증가시킨다. 비교해서 합한 값이 예산보다 크면 break한다. public static int solution(int[] d, int budget) { int answer = 0; int sum = 0; Arrays.sort(d);..

[프로그래머스]2019카카오개발자겨울 인턴십>크레인 인형뽑기 게임 Java

https://programmers.co.kr/learn/courses/30/lessons/64061 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 스택으로 바구니를 만들고 바구니에 있는 인형과 뽑을 인형을 비교해서 바구니 제일 위에 있는 인형이면 2개 같이 터트림 public static int solution(int[][] board, int[] moves) { int answer = 0; Stack stack = new Stack(); // 바구니 stack.push(0); // 값 같은지 비교하기 위해 초기값 필요함 for(i..

[프로그래머스]탐욕법>체육복 Java

https://programmers.co.kr/learn/courses/30/lessons/42862 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr 1. 도난 당한 학생보다 1 작거나 1 큰 수 학생이 여벌이 있으면 체육 수업을 들을 수 있다. 2. 여벌이 있는 학생이 도난 당했다면 -1로 해주면서 다른 학생에게 빌려주지 않도록 한다. public static int solution(int n, int[] lost, int[] reserve) { int answer = n - lost.length; // 체육..

[프로그래머스]연습문제>가운데 글자 가져오기 Java

https://programmers.co.kr/learn/courses/30/lessons/12903 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr 내가 작성한 코드 class Solution { public static String solution(String s) { String answer = ""; char[] arr = s.toCharArray(); if(s.length() % 2==0) { answer = arr[(s.length()/2)-1]+""+arr[..