전체 글(754)
-
[알고리즘] 프로세서 연결하기
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV4suNtaXFEDFAUf#none SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com import java.awt.Point; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.StringTokenizer; public class Solution { static int N; static i..
2024.02.29 -
[알고리즘] 디버깅 꿀팁
- 분명 논리가 맞는데 틀렸으면 내가 문제를 잘 읽었는지 조건대로 잘 구현했는지를 확인해봐야 한다. - 디버깅 할 때 논리 구조가 머릿속에 있어야 한다. 어떤게 문제일지 도통 모르겠을 때 그림을 그려보거나 내 코드의 논리 구조를 직접 그리며 점검해보는 것이 좋다. - 그 외는 찍어보거나 디버깅툴을 이용해서 확인해보거나 문제를 잘 읽었는지를 확인해보자 - 코드를 작성할 때 직접 말을 하며 논리 구조를 점검해보는게 좋을 듯하다. 대충 넘어가는 부분이 있을 수 있기 때문인데 나중에 디버깅이 어려워질 수 있다.
2024.02.29 -
[알고리즘] 말이 되고픈 원숭이
https://www.acmicpc.net/problem/1600 1600번: 말이 되고픈 원숭이 첫째 줄에 정수 K가 주어진다. 둘째 줄에 격자판의 가로길이 W, 세로길이 H가 주어진다. 그 다음 H줄에 걸쳐 W개의 숫자가 주어지는데, 0은 아무것도 없는 평지, 1은 장애물을 뜻한다. 장애물이 있 www.acmicpc.net import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayDeque; import java.util.Deque; import java.util.StringTokenizer; public class Main2 { static int[][] map; static int[][][] dp; ..
2024.02.28 -
[알고리즘] 파이프 옮기기 1
import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayDeque; import java.util.Deque; import java.util.StringTokenizer; public class Main { static int[][] map; static int[][] dp; static int[][] dir; static int[][] dr; static int[][] dc; static int N; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamRea..
2024.02.28 -
[알고리즘][X] 외판원 순회 2
https://www.acmicpc.net/problem/10971 10971번: 외판원 순회 2 첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 10) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j www.acmicpc.net import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Main { static int N; static int[] perm; static int minCost = ..
2024.02.28 -
[CS] 사용자 수준 스레드 vs 커널 수준 스레드 차이는?
사용자 수준 스레드 유저 라이브러리나 애플리케이션 수준에서 사용되는 스레드이다. 커널은 이 스레드에 대해서 알지 못한다는 특징이 있다. 장점 - 스레드 간 컨텍스트 스위칭 비용이 없다. - 다양한 OS에서 변경 없이 사용 가능하다. - 쓰레드를 만들기 위해 시스템콜이 필요없기 때문에 생성하는데 커널 수준 스레드보다 시간이 더 적게 걸린다. 단점 - 멀티 코어를 활용할 수 없다. - 하나의 스레드가 블락이 되면 다른 모든 스레드도 블락이 된다. 커널 수준 스레드 운영체제 커널 수준에서 관리해주는 스레드이다. 사용자 수준 스레드와 다르게 커널이 이 스레드에 대해서 알고 있다. 장점 - 멀티 코어를 통한 병렬화를 활용할 수 있다. - 하나의 스레드가 블락이 되어도 다른 스레드가 블락이 되지 않는다. (Isol..
2024.02.27