[Offer收割]编程练习赛39 register

Ended

Participants:163

Verdict:Time Limit Exceeded
Score:40 / 100
Submitted:2017-12-10 14:10:48

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
typedef  long long LL;
int GCD(LL a,LL b)
{  
    return b == 0 ? a : GCD(b, a%b);
}
int main(){
    LL n; LL k;
    cin >> n >> k;
    int cnt = 0;
    LL tmp = -1;
    for(int i = 1; i < n; ++i){
        if(i != 1 && tmp != -1 && i % tmp == 0) continue;
        if(GCD(i,n) == 1) cnt++;
        else tmp = i;
        if(cnt == k){
            cout << i << endl;
            break;
        }
    }
    return 0;
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX