본문 바로가기

전체 글

(2)
Deterministic Verification of Integer Matrix Multiplication in Quadratic Time 세 개의 $n \times n$ 크기의 정수 행렬 $A, B, C$에 대해 $AB == C$인지 $O(N^2)$에 판별하는 알고리즘을 알아보자.PS에서 보통 사용되는 $O(KN^2)$의 Freivalds' algorithm을 개선한 버전으로 생각할 수도 있지만, 이 알고리즘은 PS에선 쓰이지 않는다. 먼저, naive하게 $AB$를 계산하고 $C$와 비교하는 알고리즘의 시간복잡도는 $O(N^3)$이다. $AB$의 계산에서 $n \times n$ 크기의 두 행렬을 곱해야 하므로 $O(N^3)$의 계산이 필요하고, 계산된 결과가 $C$와 일치하는지 확인하는 데에 $O(N^2)$의 비교가 필요하기 때문이다. 조금 더 효율적인 방법이 없을까? $AB=C$라면 임의의 $n \times 1$ 열벡터 $x$에 대..
오토핫키 롤 튕김 방지 롤할 때 백그라운드에 오토핫키 실행 중이면 데마시아에 잡혀서 강제탈주 당한다. 겜 시작 초반에는 정상적으로 게임이 되는 듯 하지만 15분쯤 지나면 튕기게 되고 이후 무한로딩에 걸린다. 아래 코드를 통해 롤이 실행되면 자동으로 오토핫키가 종료되도록 할 수 있다. 모든 오토핫키 파일에 필수로 적어야 될 코드다. Loop { IfWinExist, ahk_exe LeagueClientUx.exe exitapp } 코드 최상단에 적어야 한다. 핫키나 핫스트링 코드 밑에 적으면 처음 프로그램이 실행될 때 loop가 호출되지 않아 코드를 적어도 의미가 없다.