쾌락없는 책임 (공부)
-
백준 2166 다각형의 면적 - C++, 벡터의 내적쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 6. 11. 20:29
2166번: 다각형의 면적 첫째 줄에 N이 주어진다. 다음 N개의 줄에는 다각형을 이루는 순서대로 N개의 점의 x, y좌표가 주어진다. 좌표값은 절댓값이 100,000을 넘지 않는 정수이다. www.acmicpc.net #include #include using namespace std; int t; pair spot[100001]; double CCW(double x1, double y1, double x2, double y2){ double rVal = (spot[0].first * y1) + (x1 * y2) + (x2 * spot[0].second); rVal += (-spot[0].second * x1) - (y1 * x2) - (y2 * spot[0].first); rVal /= 2; retu..
-
백준 9446 텀 프로젝트 - C++, DFS쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 6. 10. 19:32
9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net #include #include using namespace std; int t, n, res; int student[100001]; bool visit[100001]; bool isOnCycle[100001]; void DFS(int studentNum){ visit[studentNum] = true; int nextStudent = student[studentNum]; if(!visit[nextStudent]) DFS(nextStudent); else if(!is..
-
운영체제 08쾌락없는 책임 (공부)/운영체제 2021. 6. 8. 17:58
본 포스트는 '신용현'교수님의 운영체제 강의를 듣고 이해, 정리한 내용들을 올린 포스트입니다. - 강의자료는 올리지 않습니다. 하드 디스크 하드 디스크는 내부에 CD 같은 원판들이 여럿 있으며 이 원판에 자료를 저장하고 있습니다. 최근에는 SSD가 많이 좋아져서 중요성이 떨어지는 것 같지만 아직 단가 등으로 인해서 대용량 저장은 하드디스크를 사용하고 있습니다. 때문에 디스크에서 IO를 하는 경우 이에 대한 알고리즘을 생각할 필요가 있습니다. Disk I/O Time = Seek time + Rotational delay + Data Transfer Time - Seek time : 디스크 헤드가 트랙으로 가는 시간으로 3개중 제일 많은 시간을 차지합니다. - Rotational delay : 디스크 헤드..
-
백준 1956 운동 - 플로이드-와샬, C++쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 6. 7. 11:25
1956번: 운동 첫째 줄에 V와 E가 빈칸을 사이에 두고 주어진다. (2 ≤ V ≤ 400, 0 ≤ E ≤ V(V-1)) 다음 E개의 줄에는 각각 세 개의 정수 a, b, c가 주어진다. a번 마을에서 b번 마을로 가는 거리가 c인 도로가 있다는 의 www.acmicpc.net #include #include #include #define MAX 999999999 using namespace std; int v, e; int a, b, c; int road[401][401]; int res = MAX; void Floyd(){ for(int via = 1; via
-
백준 10282 해킹 - C++, 다익스트라쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 6. 6. 19:39
10282번: 해킹 최흉최악의 해커 yum3이 네트워크 시설의 한 컴퓨터를 해킹했다! 이제 서로에 의존하는 컴퓨터들은 점차 하나둘 전염되기 시작한다. 어떤 컴퓨터 a가 다른 컴퓨터 b에 의존한다면, b가 감염되면 www.acmicpc.net #include #include #include #include #include #define MAX 999999999 using namespace std; int t; //테스트케이스 수 int n, d, c; // 컴퓨터 수, 의존성 수(경로수), 해킹당한 컴퓨터 int a, b, s; // a,b 컴퓨터, s 시간 int cur, time, nextCur, nextTime; int comCount, infectTime; int com[10001]; priorit..
-
백준 5719 거의 최단 경로 - C++, 다익스트라, BFS쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 6. 5. 15:49
5719번: 거의 최단 경로 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 장소의 수 N (2 ≤ N ≤ 500)과 도로의 수 M (1 ≤ M ≤ 104)가 주어진다. 장소는 0부터 N-1번까지 번호가 매겨져 있 www.acmicpc.net #include #include #include #include #define MAX 501 using namespace std; int n, m, start, finish; int inputFrom, inputTo, inputCost; int city[MAX]; bool isFast[MAX][MAX]; bool visit[MAX]; void Djik(vector road[]){ for(int i = 0; i curCost + ne..
-
-
시스템프로그래밍 08 - 어셈블리어에서 비트 연산쾌락없는 책임 (공부)/시스템프로그래밍 2021. 6. 1. 22:52
본 포스트는 강동완 교수님의 '시스템프로그래밍' 강의를 듣고 이해한 것들을 정리한 포스트입니다. - 강의자료는 올리지 않습니다 Shift and Rotate Instruction shift / rotate는 2진수의 비트를 이용한 연산으로 아래 표를 보면 이해가 잘 됩니다. 1 0 1 0 왼쪽으로 쉬프트 0 1 0 0 1 0 1 0 왼쪽으로 로테이트 0 1 0 1 위 표에서 나오는 연산이 기본적인 쉬프트와 로테이트고 이런 비트 단위의 연산들은 곱셈이나 나눗셈 등의 연산에 비해서 비용이 상당히 적은 편이라 비트 연산을 할 수 있을땐 비트를 이용하는게 좋습니다. 어셈블리어에서 쉬프트와 로테이트는 위 표의 연산을 기본으로 가져가지만 실제로는 살짝 다르게 작동을 합니다. - logical shift : 특정 방..