본문 바로가기

전체 글

(16)
[STL] 컨테이너 정렬상태 확인 is_sorted() C++ STL의 헤더에는 컨테이너의 정렬과 관련된 여러가지 함수가 포함되어 있다. 이 중에 is_sorted() 메서드를 이용하면 컨테이너의 정렬상태를 쉽게 확인할 수 있다. 아래의 예제는 숫자를 1부터 8까지 받아서 이 숫자들이 오름차순으로 정렬되어 있으면 "ascending"을 내림차순으로 정렬되어 있으면 "descending"을 정렬되어 있지 않으면 "mixed"를 반환한다. #include #include #include using namespace std; array arr; int main() { ios::sync_with_stdio(0); cin.tie(0); for (int i = 0; i > arr[i]; if (is_sorted(arr.begi..
segmentation fault를 조심하자 C++ STL의 컨테이너를 다룰 때 정상적으로 컴파일은 되었으나, 실행단계에서 segmentation fault를 발생시키는 경우가 종종 발생한다. segmentation fault는 주로 할당되지 않은 메모리 공간에 접근할 때 발생한다. 아래 예제에서는 크기 10의 배열을 만들고 각 배열에 값을 할당하고 있다. #include #include #include using namespace std; array arr; int main() { ios::sync_with_stdio(0); cin.tie(0); int T, elm=10; cin >> T; while (T--) { while (elm--) { cin >> arr[i]; } sort(arr.begin(), arr.end()); cout T; whi..
중요한 문제에 집중하자 해결하게 되면 삶의 다른 여러 부분의 문제까지 한꺼번에 해결할 수 있는 중요한 문제에 집중하라. 현대 사회를 살아가는 우리들에게 있어 대부분의 분제들은 경제적인 문제로 귀결된다. 만약, 하고 싶은 것을 마음대로 할 수 있고, 가고 싶은 곳을 언제든 여행하며, 먹고 싶은 것을 마음껏 먹을 수 있을 만큼의 현금흐름을 지속적으로 만들어 낼 수 있다면 다른 모든 문제들은 부수적일 뿐이다. 경제적인 문제를 해결한다는 것은 자유로움을 얻는다는 것이다. 스스로의 생각대로 삶을 통제하는 것이다. 그러기 위해서는 이 중요한 문제를 빠른 시간내에 달성하는 것이 무엇보다 중요하다. 크게 생각하고 사람들이 원하는 것이 무엇인지 파악하고 그것을 충족시켜 주어라. 그리고 적정한 대가를 받아라. 이 과정에서 무엇보다 중요한 것은 ..
[C++] endl을 쓰지말자 알고리즘 문제를 풀다보면 아주 많은 수의 입력을 받아야 하는 경우가 종종 있다. 일반적으로 C++에서 입력은 cin을 통해서 받고, 출력은 cout을 통해 하게 된다. 출력을 하게 되면 출력 문 끝에 개행을 해야 하는 경우가 대부분이다. 이경우 endl을 쓰게 되는데, endl의 역할은 개행문자("\n")를 출력할 뿐아니라 출력 버퍼를 비우는 일까지 수행한다. 그런데 버퍼를 비우는 작업이 매우 느린 작업이다. 따라서, endl을 사용해서 버퍼를 비우는 작업까지 수행할 필요는 없다. 이 작업만 하지 않아도 충분히 속도가 빨라진다. 입력을 받은 cin의 경우에도 입력 전에 출력 버퍼를 비우는 작업을 한다. 그리고 cin과 cout은 묶여있다. 따라서, 이 묶음을 풀어줄 필요가 있다. 아래 구문을 사용하면 된..
100배 주식 100배 주식을 발견하기 위해서는 미래를 봐야 한다. 크게 될 수 있는 아이디어를 찾고 현재의 회사크기와 향후 예상되는 크기를 생각 할 수 있도록 사고방식을 훈련해야 한다. - 100배 주식 中
경제적 자유 "우리는 부를 쫓는 것 보다 가난을 연습함으로써 더 큰 자유를 얻을 수 있다." "무엇이든 살 수 있다. 다만, 노동으로 번 돈으로는 안된다. 우리의 노예가 벌어준 돈으로만 가능하다."
생각의 특징 생각의 가장 큰 특징은 그것을 현실로 만들어 낼 수 있는 힘을 가지고 있다는 것이다. 현실로 만들어 내고 싶은 목표를 정하고 구체적으로 상상하고 거기에 이르는 가장 빠른 길을 찾고 그 길을 묵묵히 걸어나가라. 그것이 현실이되는 그 순간까지...
파인만 기법 1. 종이 한 장을 꺼내 이해하려는 개념이나 문제를 위에서 부터 쭉 써내려간다. 2. 그 아래 공간에 누군가에게 가르치듯 설명해 본다. a. 그것이 개념이라면, 그 개념에 대해 한 번도 들어보지 못한 사람에게 어떻게 전달할 수 있을지 스스로 물어본다. b. 그것이 문제라면, 어떻게 풀지 설명한다. 그리고 풀이 과정이 어째서 타당한지 스스로 설명해본다. 3. 벽에 부딪혔을 때, 즉 자신이 이해하고 있는 것으로 정답을 도출하지 못했을 때는 책, 공책, 교사, 참고자료등으로 돌아가 답을 찾는다. 핵심은 '다 알고 있다는 착각'을 제거해야 한다는 점이다. 우리가 이해한 것의 많은 부분을 입 밖으로 설명하지 않기 때문에, 우리는 자신이 이해하지 못하는 것을 이해하고 있다고 생각하기 쉽다. 내가 이해해는 것으로 내..