본문 바로가기

분류 전체보기178

14679 - 영우와 ‘갓4’ step 1더보기전투를 1000번만 치루면 모든 스탯이 몬스터보다 높고 공격도 먼저 합니다. 즉, 이 이후로는 항상 이긴다고 생각할 수 있습니다.step 2더보기현재 몬스터의 스탯을 알고 있을 때 다음 몬스터의 스탯은 $\log n$(https://codestudycafe.tistory.com/2)에 알 수 있습니다.step 3더보기몬스터는 50,000,000마리가 있고 모든 몬스터의 상태를 계산해 주긴 해야합니다. dp를 만들어서 해결할 수 있습니다. dp[i][j][k]: 현재 몬스터의 공격력이 i, 방어력이 j, 체력이 k일 때 다음 몬스터의 공격력, 방어력, 체력 이 dp를 만들면 시간을 줄일 수 있습니다.코드더보기#define _CRT_SECURE_NO_WARNINGS#include#includ.. 2024. 7. 5.
11401 - 이항 계수 3 step 1더보기페르마 소정리에 의하면 $p$가 소수일 때 $a^{p-2} = a^{-1}$입니다. 즉, $x/y \pmod{p} = x*(y^{-1})\pmod{p} = x*(y^{p-2})\pmod{p}$ 입니다.step 2더보기${n \choose k} = \frac{n*(n-1)*...*(n-k+1)}{1*2*...*m}$ 입니다. 분모와 분자를 각각 계산한 다음 모듈러를 취해주면 됩니다.코드더보기#includelong long int pow(long long int x, long long int y) { if (y == 1) return x; if (y == 0) return 1; long long int p = pow(x, y / 2); if (y % 2 == 1) return p * p % .. 2024. 7. 5.
[논문 리뷰] Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks faster R-CNN은 R-CNN(https://codestudycafe.tistory.com/63)을 조금 더 빠르게 바꾼 모델입니다. R-CNN에서 어떤 것이 달라졌는지로 시작해 보겠습니다.무엇이 달라졌나?R-CNN은 2000개의 영역을 뽑아내고(resion proposal) 각 영역에 대해 CNN을 돌립니다. 그러면 CNN을 2000번 돌리게 되는데 이것을 한 번으로 줄였습니다.end-to-end 학습이 가능합니다. SVM을 제거해서 한번에 학습이 가능합니다.3개의 모델을 합쳐서 만들었습니다.(CNN, resion proposan network, fast R-CNN)어떻게 진행되나?다음 과정을 거칩니다.먼저 CNN을 통과시켜 feature map을 뽑아냅니다.resion proposal netwo.. 2024. 7. 2.
[논문 리뷰] Rich feature hierarchies for accurate object detection and semantic segmentation(R-CNN) 이 전의 논문 리뷰에서는 모델의 구조에 집중을 했었습니다. 이 논문에서 딥러닝스러운 부분은 사실 cnn이 전부고 이미지를 전처리하는 데에 신경을 많이 쓰고 있습니다. 따라서 이 리뷰도 전처리에 신경을 쓰도록 하겠습니다. 무엇을 하는 녀석인가각 객체들이 어디에 있는지 찾아주는 인공지능입니다.개요객체를 탐지하는데 크게 3 단계를 거칩니다.각 이미지를 적절한 영역(2000개)로 나눕니다.각 영역을 cnn에 넣습니다.그렇게 나온 정보를 이용해서 어떤 객체인지 분류합니다. 적절한 영역을 어떻게 나누는가?이 논문에서는 selective search 기법을 사용해서 구역을 나누었습니다. 헷갈릴 수 있으니 용어부터 잡고 진행합니다. resion proposal : 객체가 있을 만한 곳을 찾는 것selective sea.. 2024. 6. 30.
ip 위치 추적 가끔 보면 ip로 위치 추적을 한다는 이야기를 듣습니다. 완벽한 것은 아니지만 대략 어디에 있는지 정도는 알 수 있습니다.집 위치 추적우선 자신의 집 주소를 알아낸다고 해 봅시다. cmd 창을 열어 ipconfig를 입력해 ip을 알아냅니다. 이제 ip location을 구글에 검색해서 해당 사이트에 들어갑니다(https://www.iplocation.net/).여기에 ip를 입력하면 위치가 나옵니다. 정확히 일치하거나 그러진 않지만 어느 지역인지는 대략적으로 알 수 있겠네요.남의 컴퓨터 위치 추적구글의 서버 위치를 알아봅시다. 다시 칼리 리눅스를 열고 터미널에 apt install dnsutils를 입력합니다. dns와 관한 일을 할 수 있게 해줍니다.이제 nslookup을 입력하고 www.google.. 2024. 6. 29.
opencv - 프로젝트 2 - 3. 카드 인식 이전 프로젝트(https://codestudycafe.tistory.com/51)에서 전처리를 했습니다. 이번에는 직접 학습을 시켜 줍시다.그전에생각해 보니 모델의 마지막 레이어는 (None, 200, 200, 1)이 됩니다. 이 형식에 train_label을 맞춰줍시다.모델 생성이제 모델을 만들어 봅시다.from keras.layers import Dense, Input, Conv2D, MaxPool2D, Conv2DTranspose, Cropping2D, Concatenatefrom keras.models import Modelfrom keras.activations import sigmoidinput = Input(shape=(200,200,3))c_1_1 = Conv2D(32,(3,3),paddi.. 2024. 6. 28.