전체 글

Develop & CS/Algorithm & Data Structure

퀵 정렬(Quick Sort) C 언어

요즘 다시 C 언어를 공부하는 중입니다. 표준을 지키려고 KNK의 C Programming: A Modern Approach, 2nd ed. 을 보고 있는데 역시 굉장히 좋은 책입니다. 프로그래밍 언어를 공부하는 방법으로 저는 사소한 것들도 계속 따라해보려고 하는 편입니다. 이전에 자료구조를 배우며, 정렬을 정리해본 적은 있으나 기억이 안나는 관계로.. 이 책에 나왔던 퀵 정렬을 정리해보고자 합니다. https://wikidocs.net/book/2494 C 프로그래밍: 현대적 접근 K.N.King의 유명한 책 C Programming: A Modern Approach, 2nd ed.를 한국어로 번역한 책입니다. 모든 저작권은 K.N.King에게 ... wikidocs.net Quick Sort 퀵 정렬..

Develop & CS/Baekjoon

[Baekjoon] [2775 : 부녀회장이 될테야]

저는 원래 간단한 문제도 복잡하게 푸는걸 잘 합니다. 굉장히 한심한 편이죠. 그래서 그런지.. 문제를 풀 때마다 간단한 문제도 이런 식으로 풀곤 합니다. baekjoon 기본 수학 1 문제집에 있는 문제여서 수학적인 개념으로 풀어보고자 했습니다. 메모장에 숫자를 적어나갔습니다. 층 별 계수 1 5 15 35 1 4 10 20 1 3 6 10 1 2 3 4 1 1 1 1 층 : 호수에 따른 숫자 4 : 1 (1*4 + 2*1) (1*10 + 2*4 + 3*1) (1*20 + 2*10 + 3*4 + 4*1) 3 : 1 (1*3 + 2*1) (1*6 + 2*3 + 3*1) (1*10 + 2*6 + 3*3 + 4*1) 2 : 1 (1*2 + 2*1) (1*3 + 2*2 + 3*1) (1*4 + 2*3 + 3*2..

Develop & CS/Baekjoon

[Baekjoon] [1152 : 단어의 개수] 버퍼와 scanf, gets, fgets

아무래도 배우는게 있으면 그때 그때 글을 써야할 거 같습니다. 좀 있다가 쓰려니까 글 쓰기가 어렵네요. https://www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 이번에 푼 문제는 1152번 단어의 개수 문제이다. 문제의 풀이 문제를 보고 예시를 보면 알겠지만, 우선 띄어쓰기 ' '의 갯수를 세고 거기에 +1 한 값이 단어의 개수가 된다. 앞에 띄어쓰기가 있다면 -1, 또한 뒤에도 띄어쓰기가 있다면 -1 하면 되겠다고 생각했다. #include #i..

Daily life/IT Review

해피해킹(HHKB) Professional HYBRID (Type -S)와 리얼포스 10주년 87u 리뷰.

무접점 키보드의 끝판왕 해피해킹, 리얼포스 처음에는 리얼포스로 무접점을 입문했다가 작은 키보드도 갖고싶어서 해피해킹도 사버렸다. 리얼포스를 쓴 지는 4년정도 되어가고 해피해킹은 올해에 샀다. 리얼포스 구입한 모델은 리얼포스 87u 차등 모델이다. 차등을 사용하면서 a 부분이 실수로 눌리는 경우가 잦았다. 다음에 산다면 균등 모델을 사고싶다. 내가 윤활을 하지 않은 것도 있고 사용을 오래 한 것도 있겠지만, 일단 처음에도 스페이스바 소리는 불안정했다. 그래도 디자인과 키감이 정말 마음에 들었다. 키감은 해피해킹을 사용하기 전까진 마음에 들었다. 해피해킹 디자인은 물론 훌륭하다. 키감은 리얼포스보다 더 무접점스러운 느낌을 주었다. 정말 보글보글거리는 느낌이 마음에 들었다. 키 배열이 문제인데. 적응하기가 번..

Daily life/일상 팁

티 스토리 수식 넣는 법

해당 코드를 쓰려는 글에 붙여넣는다. 원래 블로그 편집에서 붙여넣었는데, 모바일에서 작동하지 않아 그냥 글에서 붙여넣기로 한다. $로 감싸진 것은 글과 구분되지 않는다. 그러니까 $ax+b$ 이렇게 한 줄에 쓸 수 있다. \[로 둘러싸인 것은 따로 쓰인다. \]로 끝난다. \[ax+b\] 이렇게 쓸 수 있다. 그 밖에도 다른 수식을 적기 위해서 TeX 문법을 참고하면 좋겠다. https://ko.wikipedia.org/wiki/%EC%9C%84%ED%82%A4%EB%B0%B1%EA%B3%BC:TeX_%EB%AC%B8%EB%B2%95 위키백과:TeX 문법 - 위키백과, 우리 모두의 백과사전 이 문서는 한국어 위키백과의 정보문입니다.이 문서는 정책과 지침은 아니지만, 위키백과의 규범과 관습 측면에서 공동체..

Develop & CS/Baekjoon

[Baekjoon] [10951 : A+B - 4] EOF와 scanf의 함숫값

입력이 끝날 때까지 A+B를 출력하는 문제. EOF에 대해 알아 보세요. 언제 끝날지 모름 문제의 정답을 공개하기 전에 내가 생각했던 과정을 적어본다. 문제의 문제는 종료 조건을 모른다는 것이다. EOF 찾아보라는 설명을 못 보고 입력의 예외처리를 위해서 C언어에서 try except문과 비슷한 try throw catch문을 찾아보았다.. 사실 다 작성하고 ctrl + c를 통해 강제종료 하면서 테스트 해봤는데. 여기서 종료하는건 ctrl + c가 아니라 ctrl + z였다. 암튼 try throw catch문으로 풀기는 까다로웠다. 그리고 EOF와 scanf함숫값에 대해 알았다. EOF와 scanf의 함숫값 사실 EOF라는 개념을 예상하긴 했다. ASCII 코드를 보면 나와있는 1번부터 뭐시기~ 그런..

Develop & CS/etc

바이트의 단위(KB, KiB), 하드가 실제보다 용량이 적은 것에 대하여

Bit, byte... bit는 정보의 최소단위이다. 0과 1의 값을 가진다. 1 byte = 8bit이다. 즉, 1바이트는 $2^8$까지 표현 가능하다. C언어에서 inteager(정수형)은 4바이트를 가진다. 그러면 $2^{32}$만큼을 표현할 수 있다. signed int의 경우는 음수까지 표현하기 위해서 $-2^{31}$에서 $2^{31}$의 범위를 가진다. 우리가 보통 ~기가, ~메가 라고 부르는 것은 ~기가바이트이다. 앞서 회로 이론에서 설명했듯이 기가, 메가, 킬로는 10의 n승을 의미한다. 1 킬로바이트(1 kB) = 1000 바이트 1 메가바이트(1 MB) = 1000 킬로바이트 = $10^6$바이트 1 기가바이트(1 GB) = 1000 메가바이트 = $10^6$ 킬로바이트 = $10^9..

Develop & CS/etc

DEV C++ 괄호 자동완성 없애기

Tools -> Editor Options Completion -> Symbol Completion 난 중괄호는 자동완성 해주는게 좋더라.

그믐​
neutrinox4b1