일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 독서
- 주식
- 알고리즘공부
- 자바
- algorithmtraining
- 다독
- 투자
- C++
- 책알남
- 백준알고리즘
- 채권
- 돈
- 책을알려주는남자
- 지혜를가진흑곰
- 자바스크립트
- algorithmStudy
- 프로그래밍언어
- Java
- 프로그래머스 알고리즘 공부
- 서평
- algorithmTest
- C
- JavaScript
- 알고리즘트레이닝
- 화장품
- 알고리즘 공부
- 성분
- 재테크
- 경제
- 독후감
- Today
- Total
목록분류 전체보기 (565)
탁월함은 어떻게 나오는가?
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cGSci3/btrwVchDXIp/2zghjhr1i2jKJC8G8nqzp0/img.png)
문제 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 NxN 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3)x(N/3) 정사각형을 크기 N/3의 패턴으로 둘러싼 형태이다. 예를 들어 크기 27의 패턴은 예제 출력 1과 같다. 입력 첫째 줄에 N이 주어진다. N은 3의 거듭제곱이다. 즉 어떤 정수 k에 대해 N=3^k이며, 이때 1
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/EDD1i/btrwl8mKP5a/HyKICzsCnErflb9fwjPbt0/img.png)
프로젝트 생성 방법 및 Hello Wolrd 출력 방법 1) 인텔리제이(intellij)를 설치 후 실행을 하면 아래처럼 시작된다. [New Project]를 클릭하면 새로운 프로젝트 생성, [Open or Import]를 클릭하면 기존의 프로젝트를 열 수 있다. 1-1) 만약에 기존에 사용하고 있는경우 밑에처럼 [File] >[New] > [Project] 로 생성할 수 있다. 2) [Java] 선택 후 > Project SDK의 자버 버전을 확인 후 Next 3) 바로 Next 클릭 4) [Project name]과 [Project location]을 입력해야한다. location에 원하는 위치를 설정은 [...]버튼을 클릭해서 설정 후 뒤에 [\ 또는 | (backsopace 밑에)] 를 누르고 프..
for문에서 ++i와 i++의 차이는 속도이다. 내부 operator 로직을 보면 i++ 연산이 한번 더 연산을 거치게 된다. 물론 요즘 컴파일러와 하드웨어가 워낙 빨라져서 거의 차이가 없지만 ++i가 미세하게 빠르다. 코드로 확인해보자. C계열에서 확인해보면 i++의 경우에 임시 변수를 생성하기 때문이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 1) ++i 의 경우 for (int i = 0; i
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/yxboX/btrv3hcXPB7/Dv7rT0zmdO99757jKzanZk/img.png)
알고리즘의 시간 복잡도 중에서 자주 접할 수 있는 형태를 정리한 것이다. O(1) : 상수 시간 알고리즘(Constant-time algorithm)의 수행 시간은 입력의 크기에 영향을 받지 않는다. 상수 시간 알고리즘의 예로는 공식을 이용하여 답을 바로 계산해내는 알고리즘이 있다. O(log n) : 로그 시간 알고리즘(Logarithmic algorithm)은 대체로 단계마다 입력의 크기를 절반씩 줄여 나간다. n을 계속 2로 나눠가면서 1이 되도록 하는 데에 필요한 단계 수는 log2 n이고, 따라서 이러한 알고리즘의 수행 시간은 로그 시간이다. 로그의 밑수가 시간 복잡도에 나타나 있찌 않음을 유의하라. O(로그 n) : 제곱근 시간 알고리즘(Square root algorithm)은 O(log n..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bizPZu/btrvWFZCYMN/REPCOAkjQ9g1RgL2oHYQmk/img.png)
문제 수직선 위에 N개의 좌표 X1, X2, ... , XN 이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수에 같아야 한다. X1, X2, ..., XN에 좌표 압축을 적용한 결과 X'1, X'2, ..., X'N를 출력해보자. 입력 첫째 줄에 N이 주어진다. 둘째 줄에는 공백 한 칸으로 구분된 X1, X2, ..., XN이 주어진다. 출력 첫째 줄에 X'1, X'2, ..., X'N을 공백 한 칸으로 구분해서 출력한다. 코드 C++ : 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 32 #include #inc..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c8zRNM/btrvo910CRH/ar5sZeWGzaOEfEYU1xpgQk/img.png)
문제를 풀기전에 안정정렬(stable sort)에 대해서 알아보자. 정렬이란... 데이터의 집합을 어떠한 기준의 대소관계를 따져 일정한 순서로 줄지어 세우는 것이다. ex) 숫자의 오름차순, 내림차순 안정정렬(Stable Sort)이란... 정렬을 할 경우 같은값(중복값)의 숫자가 존재하더라도 먼저 들어온 값이 뒤에 들어온 값보다 앞쪽에 정렬되는 것을 뜻한다. 밑에 이미지를 참고해서 본다면 하트5와 스페이스5가 존재한다. 정렬을 하게되면 [2, 5, 5, 7]로 정렬이 되지만, 무조건 먼저 들어온 하트5가 2번째자리에 정렬하게 된다. 쉽게 생각하자면 먼저들어온 값은 먼저 정렬된다는 보장을 해주는 것이 Stable Sort이다. ex) [하트2, 하트5, 스페이스5, 스페이스7] Stable Sort 알고..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c1qQRq/btrvrhKuDtW/AXtwHDz3qXMXxokEj9dpvK/img.png)
문제 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오. 1. 길이가 짧은 것부터 2. 길이가 같으면 사전 순으로 입력 첫째 줄에 단어의 개수 N이 주어진다. (1
대한민국의 수준낮은 주주 보호 권리에 대해 청원이 올라왔는데, 많은 분들이 공감해서 청원을 하면 좋겠습니다. 청원 내용 : 수탈이 법적으로 보장되어 있는 나라 이제는 주주권리를 보호할 수 있는 8가지 법제도를 도입해 주십시요 안녕하세요. 저희는 투자자이자 경제 인플루언서로 활동하고 있는 주주운동 프로젝트 “******”입니다. 현재 한국 증시를 한마디로 표현하면, “수탈이 법적으로 묵인되고 있는 나라”라고 생각합니다. 대주주가 마음만 먹으면 얼마든지 “합법적으로” 사내에 유보된 현금과 자산을 대주주 주머니로 옮길 수 있습니다. 그럼에도 불구하고 한국의 주주들은 이러한 수탈을 막고 권리를 보호할 수 있는 수단은 전무합니다. 주주권리를 지키기 위해 반드시 있어야 하는 8가지 보호수단이 (OECD국가들에 다 ..