POJ1006 - Biorhythms(중국의 잉여 정리)
2985 단어 poj
제목의 대의.
생략중국어가 있어요.
문제풀이
여방정식 그룹을 푸는 거예요.
x≡(p-d)(mod 23)
x≡(e-d)(mod 28)
x≡(i-d)(mod 33)
가장 간단한 중국 잉여정리 응용...
코드: #include<iostream>
#include<cstdio>
using namespace std;
void gcd(int a,int b,int &d,int &x,int &y)
{
if(!b)
{
d=a,x=1,y=0;
}
else
{
gcd(b,a%b,d,y,x),y-=x*(a/b);
}
}
int main()
{
int p,e,d,i,a1,a2,a3,M1,M2,M3,t=0;
while(cin>>p>>e>>i>>d&&p+e+i+d>=0)
{
int x=0,y,q;
a1=p-d,a2=e-d,a3=i-d;
M1=924,M2=759,M3=644;
gcd(23,M1,q,q,y),x=(x+y*M1*a1)%21252;
gcd(28,M2,q,q,y),x=(x+y*M2*a2)%21252;
gcd(33,M3,q,q,y),x=(x+y*M3*a3)%21252;
x=(x%21252+21252)%21252,x=x?x:21252;
printf("Case %d: the next triple peak occurs in %d days.
",++t,x);
}
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
POJ3071: Football(확률 DP)
Consider a single-elimination football tournament involving 2n teams, denoted 1, 2, …, 2n.
After n rounds, only one team...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
여방정식 그룹을 푸는 거예요.
x≡(p-d)(mod 23)
x≡(e-d)(mod 28)
x≡(i-d)(mod 33)
가장 간단한 중국 잉여정리 응용...
코드: #include<iostream>
#include<cstdio>
using namespace std;
void gcd(int a,int b,int &d,int &x,int &y)
{
if(!b)
{
d=a,x=1,y=0;
}
else
{
gcd(b,a%b,d,y,x),y-=x*(a/b);
}
}
int main()
{
int p,e,d,i,a1,a2,a3,M1,M2,M3,t=0;
while(cin>>p>>e>>i>>d&&p+e+i+d>=0)
{
int x=0,y,q;
a1=p-d,a2=e-d,a3=i-d;
M1=924,M2=759,M3=644;
gcd(23,M1,q,q,y),x=(x+y*M1*a1)%21252;
gcd(28,M2,q,q,y),x=(x+y*M2*a2)%21252;
gcd(33,M3,q,q,y),x=(x+y*M3*a3)%21252;
x=(x%21252+21252)%21252,x=x?x:21252;
printf("Case %d: the next triple peak occurs in %d days.
",++t,x);
}
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
POJ3071: Football(확률 DP)
Consider a single-elimination football tournament involving 2n teams, denoted 1, 2, …, 2n.
After n rounds, only one team...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
#include<iostream>
#include<cstdio>
using namespace std;
void gcd(int a,int b,int &d,int &x,int &y)
{
if(!b)
{
d=a,x=1,y=0;
}
else
{
gcd(b,a%b,d,y,x),y-=x*(a/b);
}
}
int main()
{
int p,e,d,i,a1,a2,a3,M1,M2,M3,t=0;
while(cin>>p>>e>>i>>d&&p+e+i+d>=0)
{
int x=0,y,q;
a1=p-d,a2=e-d,a3=i-d;
M1=924,M2=759,M3=644;
gcd(23,M1,q,q,y),x=(x+y*M1*a1)%21252;
gcd(28,M2,q,q,y),x=(x+y*M2*a2)%21252;
gcd(33,M3,q,q,y),x=(x+y*M3*a3)%21252;
x=(x%21252+21252)%21252,x=x?x:21252;
printf("Case %d: the next triple peak occurs in %d days.
",++t,x);
}
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
POJ3071: Football(확률 DP)Consider a single-elimination football tournament involving 2n teams, denoted 1, 2, …, 2n. After n rounds, only one team...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.