일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Operating System.
- 윤성우 저자
- OS
- Four Squares
- BOJ
- 열혈 tcp/ip 프로그래밍
- Spring
- 이펙티브코틀린
- 토마토
- 우아한 테크 세미나
- 김영한
- Operating System
- 에러핸들링
- redis
- 우아한레디스
- 스프링 입문
- HTTP
- C#
- 10026번
- inflearn
- FIFO paging
- 열혈 TCP/IP 소켓 프로그래밍
- 운영체제
- 2475번
- Window-Via-c/c++
- 스프링 핵심 원리
- C++
- 제프리리처
- n타일링2
- TCP/IP
- Today
- Total
목록분류 전체보기 (206)
나의 브을로오그으

이펙티브 시리즈 책들은 기초 서적이라기 보다는 언어를 잘 활용하여 프로그램의 성능(안전성, 가독성 등)을 향상시키는 데에 필독서 처럼 여겨지는 도서이다. 해당 도서를 공부하며 코틀린 이라는 언어를 잘 활용해보자!!!!

1) 윈도우즈 함수의 대표적인 반환 자료형 자료형 실패했을 때의 값 VOID 이 함수는 절대 실패 x, 아주 적은 수의 윈도우즈 함수만이 VOID 반환 자료형을 가짐. BOOL 함수 실패 시 FALSE(0), 성공 시 FALSE(0)이 아닌 값. 그렇기 때문에 TRUE와 비교 하지 말 것. HANDLE 함수가 실패하면 반환 값은 대개 NULL 이다. 성공 시에는 유효한 오브젝트 핸들을 반환한다. 몇몇 함수들은 INVALID_HANDLE_VALUE(-1)를 반환하는 경우가 있기 때문에 주의가 필요하다. 문서를 꼼꼼히 볼것. PVOID 함수가 실패하면 NULL을 반환. 성공 시 데이터를 저장하고 있는 메모리 주소를 가리킴. LONG/DWORD 이러한 종류의 함수는 대개 개수 같은 것을 반환한다. 만약 개수 ..

https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net #include #include #include using namespace std; #define MAX_SIZE100 bool IsValidate(char ch, char picture, bool isNormal) { if (isNormal == true || picture == 'B') { return ch == picture; } else { return ch == 'R' || ch..

https://www.acmicpc.net/problem/9019 9019번: DSLR 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 www.acmicpc.net #include #include #include using namespace std; string Progress(int n, int ans) { bool visited[10000] = { false, }; queue q; q.emplace(n, ""); visited[n] = true; while (q.empty() == false) { int cur = q.front().first..

https://www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net #include #include #include using namespace std; #define MAX_SIZE1'000'000 #define DELETE_MIN_INSTRUCTION-1 #define DELETE_MAX_INSTRUCTION1 void SyncPriorityMinQ( bool* invalid, priority_queue& minQ ) { while (minQ.empty()..

https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net #include #include #include using namespace std; #define RIPE1 #define NOT_RIPE0 #define NOTHING-1 struct Point { int m; int n; }; void RipeTomato(vector& tomatoBox, queue& ripeQ, int M, int N) { Point pt = ripeQ.fr..

https://www.acmicpc.net/problem/7569 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net #include #include using namespace std; #define RIPE1 #define NOT_RIPE0 #define NEVER_RIPE-1 int tomatoBox[101][101][101] = { 0, }; int M, N, H; struct Point3 { int m; int n; int h; }; bool IsNotRipeTomato() { f..

https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net #include #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); vector v, back; int N, input; cin >> N; v.reserve(1'000'000); back.reserve(1'000'000); for..

- Demand Paging * 요구되어지는 페이지만 backing store에서 가져온다. * 프로그램 실행 계속에 따라 요구 페이지가 늘어나고, 언젠가는 메모리가 가득 차게 된다. - Memory full * 메모리가 가득 차면 추가로 페이지를 가져오기 위해 어떤 페이지는 backing store로 몰아내고 (page-out) * 그 빈공간으로 페이지를 가져온다 (page-in) * 용어 : victim page (기왕이면 modify되지 않는 것) - Victim Page - 어떤 페이지를 몰아낼 것인가? * 시간 절약을 위해 기왕이면 modify되지 않은 페이지를 victim으로 선택 (이때 페이지 별로 modified bit를 두어 수정 여부를 체크 = dirty bit) - Page refer..

https://www.acmicpc.net/problem/17626 17626번: Four Squares 라그랑주는 1770년에 모든 자연수는 넷 혹은 그 이하의 제곱수의 합으로 표현할 수 있다고 증명하였다. 어떤 자연수는 복수의 방법으로 표현된다. 예를 들면, 26은 52과 12의 합이다; 또한 42 + 32 + 1 www.acmicpc.net #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); int dp[50001] = { 0, }; int n, j, cnt = 0; cin >> n; dp[0] = 0; dp[1] = 1; for (int i = 2; i