o0o.hero.o0o bắt đầu sự nghiệp đi học
Tổng số bài gửi : 20 Join date : 25/11/2008 Age : 34
| Tiêu đề: NEWJ- SỐ học 2 29.12.08 1:44 | |
| anh em coi dùm em bài này với em nghĩ không ra cách nào để chạy nhanh hơn được nữa nhưng vẫn TLE http://vn.spoj.pl/problems/NEWJ/đây là code của em - Code:
-
#include #include using namespace std;
int main() { int ntest,n,a,save; scanf("%d",&ntest); while(ntest--) { scanf("%d%d",&a,&n); if(a==0) {printf("0\\n"); continue;} int k = (int)sqrt(a); save=-1; for(int i=k;i<=n/2;i++) { int t=i*i%n; if( t==a ) { save = i; break; } } if(save<0) printf("Khong co\\n"); else printf("%d %d\\n",save,n-save); } return 0 ; } | |
|
NKK bắt đầu sự nghiệp đi học
Tổng số bài gửi : 13 Join date : 28/12/2008
| Tiêu đề: Re: NEWJ- SỐ học 2 29.12.08 10:02 | |
| Nếu n mod 4 = 3 hoặc n mod 8 =5 thì có công thức rồi. Còn lại thì dùng thuật toán Shanks-Tonelli. | |
|