목록전체 글 (95)
in.add()
프로그램, 프로세스, 스레드 프로그램 : 파일이 저장 장치에 저장되어 있지만 메모리에는 올라가 있지 않은 정적인 상태를 말한다. 프로세스 : 운영체제로부터 자원을 할당받은 작업의 단위. 스레드 : 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위. 프로그램 → 프로세스 프로그램이라는 단어는 아직 실행되지 않은 파일 그 자체를 가리키는 말이다. 프로그램을 실행하는 순간 해당 파일은 컴퓨터 메모리에 올라가게 되고, 이 상태를 동적인 상태라고 하며 이 상태의 프로그램을 프로세스라고 한다. 따라서 위키피디아에서는 프로세스에 대해 정의를 내릴 때 그냥 실행되고 있는 컴퓨터 프로그램이라고 정의를 내리고 있으며, 스케줄링 단계에서의 "작업"과 같은 단어라고 봐도 무방하다고 하고 있다. 실제로 프로세스라는 단어가 ..
문제 링크 : https://www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 문제 해결 방법 1행부터 내려가면서 위의 행의 같은 열이 아닌 최솟값을 더해줬다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[][] hou..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42883 코딩테스트 연습 - 큰 수 만들기 programmers.co.kr 문제 해결 방법 k개씩 보면서 최댓값을 찾아준다. class Solution { public String solution(String number, int k) { StringBuilder answer = new StringBuilder(); int idx = 0; for(int i = 0; i < number.length() - k; i++) { char max = '0'; for(int j = idx; j
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42746 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr 문제 해결 방법 numbers 모두 list에 담아준 후, 문자열+문자열 값을 int로 변환했을 때를 비교하여 오름차순으로 정렬했다. 마지막 테스트 케이스를 틀렸는데, list의 첫 번째 값이 "0"이라면 "0"을 return 하는 것을 추가해 통과할 수 있었다. import java..
3문제 2:00~4:00 화상 감독 O, 검색 불가능 1번이 제일 어려웠던 건 처음이다. 1.5 제출 아쉽다 아쉬워..
9:30~12:30 2021 하반기 라인 공채 14:00~19:00 2021 하반기 카카오 공채 하루의 1/3을 코테 보는데 썼다.. 라인 6문제 중 3 솔, 카카오 7문제 중 4.5 솔 상반기보다 많이 풀었지만 기대는 안 하는 게 좋겠다. 실버 2 ~ 골드 문제를 더 풀면서 시간을 줄이는 연습을 해야 할 것 같다. 오랜만에 봤더니 실버 3! 늘고 있는 거 같긴 하네.. 천천히... 🐢 아 그리고 저녁으로 뿌링클을 먹었다 ㅎㅎㅎㅎ
문제 링크 : https://www.acmicpc.net/problem/2116 2116번: 주사위 쌓기 첫줄에는 주사위의 개수가 입력된다. 그 다음 줄부터는 한 줄에 하나씩 주사위의 종류가 1번 주사위부터 주사위 번호 순서대로 입력된다. 주사위의 종류는 각 면에 적혀진 숫자가 그림1에 있는 www.acmicpc.net 문제 해결 방법 0번 Dice의 각 side를 bottom으로 한 모든 경우의 최댓값을 찾아줬다. import java.util.ArrayList; import java.util.Scanner; public class Main { static class Dice { int idx; int[] side; public Dice(int idx, int[] side) { this.idx = id..
문제 링크 : https://www.acmicpc.net/problem/2012 2012번: 등수 매기기 첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 500,000) 둘째 줄부터 N개의 줄에 걸쳐 각 사람의 예상 등수가 순서대로 주어진다. 예상 등수는 500,000 이하의 자연수이다. www.acmicpc.net 문제 해결 방법 정렬하면 어떻게 해볼 수 있지 않을까 싶어서 정렬 후 index - 배열[index]로 차이를 구했고 차를 모두 더해서 출력했다. 한 개뿐인 테스트 케이스는 통과했지만 제출하니 실패해서 오래 고민했다. N이 최대일 때 모두가 예상 등수를 1로 하는 경우가 있다면 int 범위를 넘어가기 때문이었다. 차의 합을 구하는 dif 변수를 int에서 long으로 바꿔 성공할 수 있었다..