전체 카테고리

초기 작성 코드 import java.util.*; public class Main { private List solution(List a, List b) { List answer = new ArrayList(); answer.addAll(a); answer.addAll(b); Collections.sort(answer, new Comparator() { @Override public int compare(Integer o1, Integer o2) { return o1 > o2 ? 1 : o1 < o2 ? -1 : 0; } }); return answer; } public static void main(String[] args) { Main al = new Main(); Scanner sc = new S..
봉우리란, N*N 형태의 격자판에서 주변(상하좌우)의 값보다 높은 값을 가지는 인덱스들이 봉우리가 된다. 주변과 같은 값이 있다면 봉우리가 아님에 유의하자. + 격자판은 0으로만 구성된 행, 열에 감싸진다. (격자판의 상하좌우 마지막 행, 열은 모두 0으로 구성되어있다.) 초기 작성 코드 import java.util.Scanner; public class Main { private int solution(int n, int[][] grid) { int answer = 0; for (int i = 1; i grid[i][j + 1]) { if (grid[i][j] > grid[i - 1][j] && grid[i][j] > grid[i + 1][j]) { answer++; } } } } return ans..
자연수 N이 주어지면 N*N 만큼 숫자가 주어진다. 이 격자판에서의 각 행, 열, 대각선의 합 중 가장 큰 값을 구하는 문제이다. 초기 작성 코드 import java.util.Scanner; public class Main { private int solution (int num, int[][] grid) { int answer = 0; // 행의 합 중 가장 큰 값 도출 for (int i = 0; i answer) answer = sum; } // 열의 합 중 가장 큰 값 도출 for (int i = 0; i < num; i++) { int..
문자열 뒤집기 문자열을 입력받는 부분의 코드는 아래와 같다. 여기서는 실제 문제를 해결해 답안을 도출해내는 solution 메서드만 추가적으로 작성하겠다. (import문도 생략한다.) import java.util.Scanner; public class Main { public static void main(String args[]) { Main main = new Main(); Scanner sc = new Scanner(System.in); String str = sc.nextLine(); System.out.println(main.solution(str)); } } 1. 직접 문자열을 뒤집는 방법 1) 가장 간단하게는 직접 문자열을 뒤집는 방법이 있다. 여기에도 가장 원초적인 방식으로는 문자열의 ..
조건 입력 값은 2이상 20만 이하 첫 줄에 소수의 개수를 출력 1차로 작성한 코드 import java.util.Scanner; public class Main { private int solution(int num) { int answer = 0; for (int i = 2; i
· Backend/Java
Integer 클래스의 parseInt로 정수의 기수 변환을 할 수 있다. 이 메서드는 하나의 매개변수의 인자만 전달하여 단순하게 String 형태의 정수를 int 타입으로 변환할 때 많이 사용하게 되는데, 매개변수가 하나일 때는 변환된 10진수 정수가 나오고, 두 번째 매개변수로 기수를 전달할 경우 해당 String형태의 값이 해당 기수로 표현된 값임을 전달해주게 된다. 반환되는 값은 항상 10진수 값이다.두 번째 매개변수인 radix(기수)의 인자로는 10, 2, 8, 16가 들어갈 수 있다. Integer.parseInt(String str, int redix); Integer.parseInt(str, 2); Integer.parseInt(str, 8); Integer.parseInt(str, 16);
· Backend/Java
Integer 타입의 리스트를 int 타입 배열로 변환할 때는 (int[]) 등의 형태로 변환할 수 없다. 이 때는 아래와 같이 List에서 제공하는 stream을 통해 primitive type인 int 타입 배열로 변환할 수 있다. List list = Arrays.asList(1, 2, 3, 4, 5); int[] arr = list.stream().mapToInt(Integer::intValue).toArray();
· Backend/Java
쉘 스크립트를 실행시키면서 파라미터를 넘기기 위해서는 'sh 스크립트명 파라미터'와 같이 실행시킬 쉘 스크립트 파일명 뒤에 띄우고 전달할 수 있다. 이를 자바에서 쉘 스크립트 실행하는 방법과 연동하면, Java가 제공하는 Runtime 클래스의 getRuntime() 메서드를 호출해 런타임 인스턴스를 반환받아, 여기에 exec() 메서드를 통해 쉘 실행 스크립트를 작성하면 된다. Process process = Runtime.getRuntime().exec("sh shellname.sh hello java"); 쉘을 아래와 같이 작성되어 있다고 전제한다. $ echo $1 $ echo $2 위의 내용을 바로 출력시켜 보려면 Process 인스턴스로부터 바로 InputStream을 받아 BuffredRea..
· 기타
기본적인 형태는 이러하다. $ find [path] [filename] [-option] [-filetype] - option(optional) : 이름으로 찾을 때는 -name을 입력하면 된다. - filetype(optional) : 해당 이름의 디렉토리를 찾는 것이라면 -d, 파일을 찾는 것이라면 -f를 입력하면 된다. 만약 기본 위치(~)에서 resourcedir 라는 이름의 폴더를 찾으려면 아래와 같이 작성할 수 있다. $ find . "resourcedir" -name -d
· 기타
Linux에서는 vmstat 명령어를 통해 조회할 수 있는 내용을 맥에서는 vm_stat으로 작성해야 한다. 추가적으로, 리소스 모니터링을 위해서는 top, iostat을 사용할 수 있다. 이 부분에 대해서는 추후에 구체적인 게시글을 작성할 예정이다.
devYH
'분류 전체보기' 카테고리의 글 목록 (12 Page)