일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- go
- JUCE 튜토리얼
- Nebula
- BOJ
- LOB
- vim-go
- C언어
- JUCE
- 연결리스트
- C++ gui
- Docker
- OS
- JUCE library
- 공룡책
- 프로그래밍
- C++ library
- c++ heap
- 운영체제
- tour of go
- 백준
- go channel
- C++
- 코딩
- a tour of go
- gui
- C++ gui 라이브러리
- 리듬게임
- JUCE라이브러리
- 자료구조
- Today
- Total
목록백준 (7)
CafeM0ca
2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net 주석을 지우고 실행해보자. #include #include #include #include #define WHITE_TILE 0 #define BLUE_TILE 1 using namespace std; void print(const vector &v) { for(const auto& i : v) { for (const auto& j : i) { cout
이전에 삽입정렬 구현해둔것으로 풀었다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253/*삽입 정렬1.데이터가 있다. 데이터는 두 개 이상이다.2.두번째 요소부터 마지막 요소까지 돈다.3.n번째 요소는 n부터 1까지 돈다.4.만약 n번째 요소가 n-1번째 요소보다 크면 그만 돈다.5.삽입으로 인해 요소들이 밀린다.*/ #include using namespace std; inline void ShowArray(int arr[],int); void InsertSort(int arr[],int len){ for(int i=1;i0;j--) //j는 i-1번째 원소 { if(arr[j..
std::array써서 저장하는 방식으로 사용하려 했지만 세로부터 1씩 증가하면서 꼭대기층까지 가면 가로를 1증가시키고 다시 세로를 1씩 증가하면서 n번째가 될때가 n번째 손님이니 출력했다. 12345678910111213141516171819202122232425262728#include using namespace std; int main(){ cin.sync_with_stdio(false); cin.tie(NULL); int h,w,n,t; cin >> t; for(int repeat=0;repeat> h >> w >> n; int cnt = 1; for(int i=1;i
재귀함수로 메모이제이션을 이용했다. 이게 0층4호 부터 3층 4호까지 적어보면 행렬의 모양을 띄우는데 a층 b호 = a층 b-1호 + a-1층 b호다. 모카는 문제에서 제시한 방법대로 풀었다. 람다 처음으로 적용해서 써봤는데 쏠쏠하다. 12345678910111213141516171819202122232425262728293031323334353637#include using namespace std;auto NextFloor(int k,int b){ static int memo[16][16]{0}; if(memo[k][b]) return memo[k][b]; if(k == 0) { memo[k][b] = b; return memo[k][b]; // 내 마음속에 저~장 } else{ return [&](..
지금 문제 열람이 안되는데 문제는 하나의 큰 폭죽이 k개의 중간 폭죽으로 나눠지고, 나눠진 중간폭죽은 폭죽마다 k개의 작은 폭죽으로 또 나눠져 한줌의 재가 된다는 내용이다.이때 전체 폭죽 대,중,소의 개수를 주어지고 k를 구하는 문제였다. 입력으로 21이 주어지면21 = 대+중+소 이다.여기서 대는 항상 1이다.20 = 중+소소는 중의 제곱이다. 편의상 둘다 k라 두자.20 = k + k^2k로 묶으면20 = k(1+k)다. 이것을 코드로 구현하면 되는 단순한 문제다. 123456789101112131415161718192021#include using namespace std; int main(){ cin.tie(NULL); cin.sync_with_stdio(false); int n; cin >> n..
vector로 find해서 찾으려 했는데 뇌과부하 와서 배열로 풀었다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#include using namespace std; int main(){ int n; int cnt = 0; char voca[101]; //cout n; for(int i=0;i
친구에게 도움을 많이 받았다. 3일걸렸는데 1일차에는 링크드리스트 직접구현해서 써먹을려다 실패. 2일차에는 std list 사용법 익히다가 erase부분에서 조건 몰라서 실패 3일차에 erase부분 도움받았다. 123456789101112131415161718192021222324252627282930313233343536373839#include#include#includeusing namespace std;int main(void){ int L; //줄 수 string s; cin >> L; while(L>0){ list keyloger; //keyloger 리스트 생성 list::iterator insert_pos = keyloger.begin(); //insert_pos라는 리스트의 iterato..