BestCoder #80 - 1002 빠른 곱셈 모드
처음에는 너무 막막했는데 나중에 x+y=q를 발견했어요. 그리고 y=(q-i)/i*x를 간략하게 하면 (x+y)=q/i예요.그러면 제목의 묘사에 따르면 q는 질수이기 때문에 q/i로 말하자면 i=1이거나 i=q이다. 이 두 가지는 모두 x+y=q에 꼭 맞기 때문에 이런 라인은 아무런 영향이 없다.
코드: View Source On GitHub
새로운 것을 배웠다: 빠른 곱셈으로 모형을 뽑다
연결: 빠른 곱셈/멱 알고리즘 설명
코드는 다음과 같습니다.
long long q_mul( long long a, long long b, long long mod ) // (a*b) % mod
{
long long ans = 0; //
while(b) // b a
{
if(b & 1) // 1
{
b--;
ans =(ans+ a)%mod; //ans+=a
}
b /= 2; //b
a = (a + a) % mod; // a
}
return ans;
}
나는 이미 AC 제목의 소스 코드를 저장하기 위해 GitHub에 창고를 만들었다.수록되지 않은 제목이나 더 좋은 해법이 있다면 포크창고+PR을 환영합니다~ AC코드 집중창고를 공동으로 만들어서 ACM Beginner를 행복하게 해주세요~
창고 주소: OJ-Problems-Source On GitHub
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.