이 글은 본격적으로 운영체제에 대해 다루기 이전에 미리 상식적으로 알면 좋을 것 같은 내용들을 다루겠습니다. OS? Oh Yes! 서적 기반, 숙명여대 김주균 교수님 강의, 위키피디아 등을 정리했습니다. 공부한 것을 정리하는 형식으로 작성되었으므로 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 시작 전 (잡)여담 지난 학기 싱가포르의 NTU로 교환학생을 다녀왔고, 다음 학기 역시 NTU에서 보내게 되었습니다. 그리 대단한 것을 하고 오지는 않았지만 개인적으로 좋은 습관하나는 들이고 온 것 같습니다. 세계 10, 11위를 다투는 학교의 수업은 어떠할까? 라는 질문을 해결하기 위해 떠난 곳이었는데 교수님들의 강의력(을 제가 논할 것은 아닙니다만 감히 해보자면)이 뛰어난 것은 ..
이 글은 library 에 대해 다루겠습니다. 공부한 것을 정리하는 형식으로 작성되었으므로 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 계획에 따라 '구현'을 하는 것이 알고리즘 문제 풀이의 핵심이라고 하지만 얼마나 효율적으로 잘 하느냐도 중요합니다. 사용할 주력 언어를 정했으면 그 언어가 지원하는 library에 대해 잘 아는 것도 매우 중요합니다. 그래서 이번 글에서는 정말 많이 쓰는 #include 을 하게 되면 무엇을 할 수 있고, 어떻게 활용할 수 있는지 살펴보겠습니다. 나와 있는 순서는 제가 많이 사용하는 함수들, 구분선 뒤로는 아직 문제를 풀다가 사용해본 경험은 없는 함수들 입니다. 정말 많이 쓰고 있는 함수 1. size / length / max_size..
이제 아는 언어도 좀 있겠다, 인턴/취준을 좀 해보겠다고 알고리즘 문제를 풀어나가다 보면 백이면 백 구글에 다시 찾아보는 개념이 자료형이다. 너무나도 쉬운 문제라고 생각해서 풀었는데 런타임 에러가 생긴다던지, 틀릴 이유가 없는데 모든 테스트 케이스가 통과를 못한다던지. 뭐지…? 하다가 밑에 달린 댓글을 보거나, 도저히 안되겠어서 풀이를 검색해보면 '풀이'가 문제가 아니라 답을 담던 그릇이 잘못 된 경우가 허다하다. 물론 문제를 풀 때 처음부터 주어지는 input 값의 크기를 제대로 보는게 제일 중요하지만 또 멍청이 같이 똑같은 실수를 했을 미래의 나를 위해 쓴다. 자료형 중에 막 __int32, __int64 뭐 이런게 있는데 호환되는 일반자료형(이렇게 표현해도 되는건가)이 존재하니까 그냥 쓰던 자료형,..
[5948] : 새샘이의 7-3-5 게임 입력 : 7개의 서로 다른 정수 출력 : 7개의 정수 중 3개의 수의 합 중 5번째로 큰 수 전략 주어지는 입력이 7개의 정수이므로 만들 수 있는 합의 조합은 35개 내림 차순으로 정렬을 하고 5번째로 큰 수를 구한다 (합은 같을 수 있음 (5 + 6 + 7) = (4 + 5 + 9) 처럼) #include #include using namespace std; bool descend(int, int); int fifthLargeNum(int *); int main(void){ int testCase, sevenNums[7], sumSet[35]; cin >> testCase; for(int tc = 1; tc > sevenNums[i]; for(int x = 0;..
[6190] : 정곤이의 단조 증가하는 수 입력 : N개의 정수 → 가능한 곱셈 조합을 알아보니까 계속 된 인덱싱이 필요하므로 벡터보다는 배열이 더 적합 출력 : 단조증가 수 중 가장 큰 곱셈조합 (없으면 -1) 전략 단조 증가하는 수 판별 법 : 10으로 나누어보았을 때 직전 나머지가 현재 나머지보다 커야 함 10보다 작은 수는 단조 증가로 판단하므로 do-while 사용 #include using namespace std; bool isItIncreasingNum(int); int main(void){ int testCase; cin >> testCase; for(int tc = 1; tc > N; int *numArr = new int[..
[6730] : 장애물 경주 난이도 입력 : 블록의 높이들 → 고정된 값이고, 삽입 삭제가 일어나지 않을 예정이므로 배열(: blocks)을 사용 출력 : 1) 올라갈 때 가장 심한 높이 변화 2) 내려갈 떄 가장 심한 높이 변화 전략 blocks[i - 1]과 blocks[i]를 비교해서 up인지 down인지 판별 방금 비교한 up / down이 maxUp / maxDown 보다 큰지 판별해서 업데이트 #include using namespace std; int main(void){ int testCase; cin >> testCase; for(int t = 0; t > blockCount; // blo..
이 글은 Vector와 Array 에 대해 다루겠습니다. 전체적인 내용은 eduCBA, cplusplus.com 등을 정리했습니다. 공부한 것을 정리하는 형식으로 작성되었으므로 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 알고리즘 문제를 풀다보면 동적으로 원소들을 넣었다 뺐다 하는 경우가 많기 떄문에 거의 무조건적으로 vector를 쓰곤 합니다. 그래도 생각해 보면 배열을 또 아주 쓰지 않는 것은 또 아닙니다. 대학교에서 시험을 보기 위해서 공부 하던 당시 vector는 자료 접근을 자주 할 때 쓰지 않는 것이 좋다고 했던 기억이 아주 어렴풋이 있는데 그래도 뚜렷한 구분을 할 필요성은 느낍니다. (사실 프로그래머스의 이 모의고사 문제는 배열로 풀었어도 큰 무리는 없었을 ..
[1970] : 쉬운 거스름돈 #include using namespace std; void getChange(int); int main(void){ int testCase; cin >> testCase; for(int test = 0; test > changeM; getChange(changeM); } return 0; } void getChange(int money){ int mType[8]{0,}; int static trial = 1; while(money > 9){ if(money >= 50000){ mType[0] += 1; money -= 50000; } else if(money >= 10000){ mType[1] += 1..
[1859] : 백만 장자 프로젝트 #include using namespace std; int main(void) { int testCase; int day; cin >> testCase; long * ans = new long[testCase]; for (int i = 0; i > day; long * price = new long[day]; long total = 0; for (int j = 0; j > price[j]; long max = price[day - 1]; for (int j = day - 2; j > -1; j--) if (price[j] < max) total += (max - price[j]); else ma..
[1285] : 아름이의 돌 던지기 #include #include using namespace std; vector distAns; vector cntAns; void printAnswer(int); // output int getDistance(int*, int); int getCount(int*, int, int); int main(void){ int testCase; cin >> testCase; for(int test = 0; test > N; int * dist = new int[N]; for(int i = 0; i > dist[i]; if(dist[i] < 0) // 음수 쪽에 ..
- Total
- Today
- Yesterday
- 소프트웨어역량시험
- C++
- 컴공졸작
- firebase
- 부캠
- 코딩테스트
- 운영체제
- 삼성소프트웨어아카데미
- 보안
- swacademy
- ios
- 부스트캠프
- 데이터분석
- 코테
- 알고리즘
- 졸업작품
- SWIFT
- 컴퓨터공학
- 프로그래머스
- TableView
- 개발자인턴
- 인턴
- 소프트웨어아카데미
- 부스트캠프2020
- RxSwift
- 삼성
- nosql
- 컴과졸작
- 커넥트재단
- OS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |