2024/10/17 4

[백준 실버1] 11286 절대값 힙

중요한 조건은 드래그한 저 줄이다. 배열에 입출력에 대한 조건이 있다.1. 입력할 때 0이 아닐 때,2. 출력할 때 0일 때, 하지만 출력에 조건이 있다.1. 절대값이 가장 작을 것2. 절대값이 가장 작은 수가 중복될 경우 가장 작은수 출력(= 음수 출력) 출력에 대한 조건에 우선 순위에 대한 명확한 기준이 있다.이는 우선 순위 큐로 구현하기 적합함을 알 수 있다.  #include #include #include #include #include #include #include #include using namespace std;struct compare { bool operator()(int a, int b) { if (abs(a) == abs(b)) { retur..

[백준 실버4] 2164 카드2

밑에 큐라고 써있는 만큼 선입선출(FIFO)의 구조를 가질 수 있는 구현 방법이다.차례대로 넣고 빼는 순서는 가장 먼저 넣은 것을 빼고 (= 큐에 있는 것을 뺀다)그 바로 뒤에 있던 카드를 뒤에 넣는다(= 큐에 새로 추가한다).다시 그리고 세 번째에 있던 카드를 뺀다.( = 큐에 있는 것을 뺀다)라는 과정의 반복이다. 카드가 단 1장 남을 때 까지면 Queue의 사이즈가 1일때 까지가 반복문의 조건된다.#include #include #include #include #include #include #include #include using namespace std;int main(void){ ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(N..

[Devlog-DX11] HOLLOW KNIGHT 모작 - Audio 기능

Sound 클래스에서 STL map 을 이용한 SoundList를 관리한다. Key에는 해당 사운드를 불러올 string 을 넣어주고, Value에는 SoundNode 구조체를 가지고 있다. 따라서 Key값의 string 입력에 규칙을 정하면 음원 관리가 가능하다. 아래는 음원 규칙에 관련된 코드이다. E는 effect관련이며 (NPC대화 목소리, UI 소리 등) M는 배경음악을 관리한다. void Sound::SetAllVolume(float scale) { for (auto iter = SoundList.begin(); iter != SoundList.end(); iter++) { iter->second->channel->setVolume(iter->second->volume * app.soundSc..

10월 중순을 지나며

10월에 이룬 뿌듯한 일을 써보려한다. :)뿌듯한 일윤성우 자료구조 책은 처음에는 인강으로 다 들어본 뒤,대충 한 번 더 훑었다.이후에는 다음에는처음부터 꼼꼼히 완독을 해나가려 노력했다.기간은 총 10개월 정도 걸렸다. 필사도 해가고, 필사한 걸 토대로 이론을 구현해보기도 하고,눈으로 읽어가며 이해해보려고하고,이해 안가면 코드로 따라쳐보고해서 1년 남짓한 기간 동안 다 읽어나갔다.닳아서 너덜거리기 시작하는건혼자 공부하는 C언어 책 이후로 처음이다.뒷면도 까지는 게 꽤나 알차게 읽었다는 표시같고 뿌듯했다. :) 이 책을 보면서중간에 다른 자료구조 알고리즘 책이나 강의도 조금씩 보기도 했다. 이제 코테 풀 때 조금씩 뭘 써야하는지 전보다는 보인다.앞으로 다른 책들도 잘 읽어나가며 정리도 잘 해나가야겠다.이제..