본문 바로가기
반응형

코딩52

백준 9661번 - 돌 게임 7 (C++) 문제 해결 방법 이 게임은 다음사람이 4내면 1내고 / 1내면 4내서 0을 만들기때문에 남은 돌의 갯수를 5개 그리고 같은 이치로 남은 돌 갯수를 2개 만든 사람이 이긴다. 때문에 그냥 n%5해서 0이나 2가 남으면 후공이 이기고, 이 외의 경우에는 선공이 이긴다. 아쉬웠던 점 이게 골드2인게 아쉽다. 너무 날먹문제야... 코드 1 2 3 4 5 6 7 8 9 10 11 12 #include using namespace std; int main() { long long int n; cin >> n; n = n%5; if (n == 0 || n == 2) cout 2021. 10. 2.
백준 11438번 - LCA2 (C++) 문제 해결 방법 기존 LCA와 똑같이 풀이하되, 기존에는 공통 조상을 찾기 위하여 한칸한칸 전진하며 찾았지만, 데이터 범위가 늘어나 한칸한칸 전진하며 탐색하면 시간 초과가 나온다. 때문에 각 숫자별로 (2^0, 2^1, 2^2... 2^16)만큼 전진한 부모를 저장하여 2의 제곱수만큼 전진하며 탐색한다. 'Parents[i][j] = 2^j만큼 떨어진 i의 부모'이다. 2의 제곱수만큼 전진한 부모를 아는 방법은, "Parents[i][j + 1] = Parents[Parents[i][j]][j]"를 해주면 된다. 풀이를 하자면,나의 2^2+1(8칸)만큼 떨어진 부모는 나의 2^2(4칸)만큼 떨어진 부모의 2^2(4칸)만큼 떨어진 부모다. 즉 8칸=4칸+4칸, 2^3=2^2+2^2인것과 같은 원리다. (1.. 2021. 10. 2.
백준 5430번 - AC (C++) 문제 해결 방법 삭제할때 pop을 통하여 삭제할 예정이기 때문에 특수문자와 자릿수 문제 해결을 위하여 숫자들을 모두 deque> Num; for (int i = 0; i > Command_Str; int Ary_Num; cin >> Ary_Num; cin >> Str; deque Deq; //string에 있는 숫자들 deque로 옮김 for (int k = 1; k 2021. 10. 2.
백준 1700번 - 멀티탭 스케줄링 (C++) 문제 해결 방법 그리디 알고리즘을 사용하며 현재 멀티탭에 꽂혀 있는 용품 중, 이후에 등장하지 않는것을 뽑고, 이후에 등장하지 않는 용품이 없다면 그중 가장 나중에 사용하는 것 순서로 제거하면 된다. 이를 위하여 입력 시, 벡터에 용품들이 사용되는 순서에 대하여 2차원 배열 형태로 추가로 저장하였다. 아쉬웠던 점 골드 1이라 기대했는데 너무 쉬웠다. 특히 문제의 범위가 너무 좁아 삭제가 들어간 내 코드도 0ms가 나와서 상위권의 좋은 코드들을 보지 못하는 것도 단점이라고 생각한다. 코드 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 33 34 35 36 37 38 39 40 41 42 43 44 .. 2021. 9. 17.
반응형