ALGORITHM/인프런코테 (3) 썸네일형 리스트형 3-1 두 배열 합치기(자바) 첫 번째 배열의 크기 n이 주어집니다. n크기 만큼 배열에 입력받습니다. 두 번째 배열의 크기 m이 주어집니다. m크기 만큼 배열에 입력받습니다. 두 배열을 합쳐서 정렬한 후에 출력하면 됩니다. 문제풀이 : 배열1과 배열2를 arraylist에 넣은후에 컬렉션의 sort함수를 사용하여 정렬한 후에 출력하면 됩니다. import java.util.*; public class Main { static int[] arr1 = new int[100]; static int[] arr2 = new int[100]; static ArrayList arr3 = new ArrayList(); public static void main(String[] args){ Main main = new Main(); Scanner .. 53. k진수 출력 10진수 n이 입력되면 k진수로 변환하여 출력하는 프로그램을 만들어보는 문제이다. (스택 자료구조사용) 입력 10진수 n이 주어지고 k가 주어진다. 입력예제 11 2 출력예제 1011 2진수 변환 방법은 주어진 수 n을 2로 나눈 나머지를 스택에 push하고 n을 몫에 넣어준후에 몫이 0이 될때까지 반복한다. 스택으로 구현하여 pop하면 first in last out 구조로 나중에 넣은 값이 먼저 출력되기 때문에 2진수 변환을 구할 수 있다. 스택의 top은 -1로 초기화하고 push하기전에 +1 pop하고 난 후에 -1한다. 스택에는 언더플로우와 오버플로우가 있는데 언더플로우 예방방법으로 top이 0이상일 때까지 pop이 가능하게 만들면 되고, 오버플로우 예방은 stack의 크기가 100이라면 0 ~.. 38 inversion sequence 배열의 크기 n 과 배열에 들어갈 값 n개의 정수를 입력받는다. 입력예제 8 5 3 4 0 2 1 1 0 각 입력값은 순서대로 1부터 n까지 각 자리수의 왼쪽에 자신보다 큰 값의 개수이다. 이런 입력값이 주어졌다면 1은 자신의 왼쪽에 자신보다 큰 수가 5개 있다. 2는 왼쪽에 자신보다 큰 수가 3개 있다. 3은 왼쪽에 자신보다 큰 수가 4개 있다. inversion sequence가 주어지면 이것으로 원래 배열의 위치(original sequence)를 찾는 문제이다. 8은 자기자신보다 큰 수가 없다. inversion sequence의 배열원소에 접근해서 값을 count에 넣고 count횟수만큼 삽입정렬을 반복하면 된다. 중요한 점은 배열의 뒤쪽부터 접근해서 문제를 해결해야 한다. inversion s.. 이전 1 다음