본문 바로가기

전체 글127

백준 2294 동전 2 C++ 간단한 해설 1차원 dp로 해결 밑이랑 비슷한 방식 백준 1106 호텔 C++2차원 dp로 할려다가, 기존의 배낭문제처럼 최댓값을 이어서 받는 것은 고객 수의 idx가 배수가 아닐 경우, 문제가 생겨서 1차원 dp로 해결하였다. 주석을 상세히 다시 달아보았다. 적어도 c명 이상ash9river.tistory.com    답#include #include #include using namespace std;int main(){ cin.tie(0); ios_base::sync_with_stdio(0); int n,k; cin>>n>>k; vector v(n); for(int i=0;i>v[i]; } sort(v.begin(),v.end()); vector dp(k+1,987654321); for(int i=.. 2024. 9. 30.
백준 14502 연구소 C++ 간단한 해설 그냥 간단한 브루트포스 + bfs10분컷 답#include #include #include #include using namespace std;vector picker;vector> v;vector> canMakeByeok;vector> vir;int n,m,ans;int dy[4]={1,-1,0,0};int dx[4]={0,0,1,-1};bool set(int y,int x,vector>& table){ if(y=n||x=m) return false; if(table[y][x]!=0) return false; return true;}void bfs(){ vector> tmpV=v; for(int i=0;i> q; for(int i=0;i>n>>m; v.resize(n,vector(m)); .. 2024. 9. 26.
백준 17141 연구소 2 c++ 간단한 해설N이 50밖에 안되서 간단하게 바이러스를 놓는 위치를 정하는 것은 브루트 포스, 바이러스 전파를 BFS로 하면 쉽게 풀린다.  답#include #include #include #include #include using namespace std;vector> vir;vector picker;vector> v;int n,m,ans=987654321;int dy[4]={1,-1,0,0};int dx[4]={0,0,1,-1};bool set(int y,int x,vector>& visited){ if(y=n||x=n) return false; if(v[y][x]==1) return false; if(visited[y][x]) return false; return true;}vo.. 2024. 9. 25.
백준 17485 진우의 달 여행 (Large) C++ 간단한 해설단순하게 메모이제이션을 활용하는 dp문제사실 더 최적화 할 수 있지만, 경우의 수가 적어서 그냥 3차원 배열로 관리하였다. 답#include #include #include using namespace std;int main(){ cin.tie(0); ios_base::sync_with_stdio(0); int n,m; cin>>n>>m; vector> v(n,vector(m)); vector>> dp(n+1,vector>(m,vector(3,987654321))); for(int i=0;i>v[i][j]; } } for(int i=0;i 2024. 9. 25.
백준 1036 36진수 C++ 간단한 해설36진법의 수 N개가 주어진다. 36진법 숫자(0-9, A-Z) 중에서 K개의 숫자를 고른다. 그러고 나서 N개의 수 모두에서 나타난 그 숫자를 Z로 바꾼다. 여기서 Z로 바꾸는 기준이 (Z - 기존수)의 값이 가장 큰 value를 고르면 된다. 만약 예제가 이렇게 있다고 생각해보자2A0B01 A를 Z로 변환하면 Z0+B0=1A0이 된다.B를 Z로 변환하면 A0+Z0=190이 된다. 그래서 우선순위 큐를 활용하던가, 정렬을 이용해서 (Z-기존수)의 합들의 값이 가장 큰 진수를 고르면 된다. 테이블을 만들어서 해당되는 자리수와 그에 맞는 진수, 이 둘에 대한 개수를 넣으면 좀 더 편하게 생각할 수 있다.  그런데, Z랑 0일 때, 특이 케이스를 배제하지 않으면 5%틀이 계속 나오게 된다... 나.. 2024. 9. 24.
[React] 비대화형 요소(td, div)에 마우스 이벤트(onFocus, onBlur) 넣기 HTML 요소 포커스 HTML에서 , , , 와 같은 요소는 대화형 요소는 기본적으로 포커싱이 된다.그러나 대화형 요소가 아닌 비대화형 요소(div, td, ul, li, span, p...)는 포커싱이 발생하지 않는다.  즉, onFocus와 onBlur 이벤트가 발생하지 않는다. 비대화형 요소에 onFocus, onBlur 이벤트를 발생시키고 싶으면  2가지 방법이 있다. 1. tabIndex 속성 활용2. 직접 마우스 이벤트 제어 직접 하나씩 알아보자 tabIndex 속성tabIndex 속성은 요소의 종류와는 무관하게 포커스 가능함을 나타내는 속성이다.Tab 키를 사용하는 연속적인 키보드 탐색(tab 탐색)에서 어느 순서에 위치할 지 지정한다. tabIndex=-1로 표현되는 음의 정수 값은 tab.. 2024. 9. 23.