10422022-02-27 11:51:57Szin AttilaFőzet készítéscpp14Elfogadva 50/50331ms3184 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;

const int maxN = 500;
const int MOD = 1e9 + 7;

short dp[501][501];


int main() {
    ios::sync_with_stdio(0);cin.tie(0); cout.tie(0);

    vector<pair<int, int>> v;

    for(int i = 1; i <= 35; i++) {
        for(int j = 1; j <= 35; j++) {
            if(__gcd(i, j) == 1) v.push_back({i, j});
        }
    }

    for(int i = 1; i <= v.size(); i++) {
        for(int j = maxN; j > 0; j--) {
            for(int l = maxN; l > 0; l--) {
                if(v[i-1].first <= j && v[i-1].second <= l) {
                    dp[j][l] = max(dp[j][l], (short)(dp[j - v[i-1].first][l - v[i-1].second] + 1));
                }
            }
        }
    }

    int t;
    cin >> t;
    while(t--) {
        int x,y;
        cin >> x >> y;

        cout << dp[x][y] << "\n";
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/0303ms2828 KiB
2Elfogadva0/0310ms2916 KiB
3Elfogadva3/3300ms2904 KiB
4Elfogadva2/2319ms2908 KiB
5Elfogadva3/3312ms2928 KiB
6Elfogadva2/2321ms2920 KiB
7Elfogadva3/3326ms2924 KiB
8Elfogadva2/2314ms2960 KiB
9Elfogadva3/3314ms2964 KiB
10Elfogadva2/2308ms2984 KiB
11Elfogadva2/2312ms2996 KiB
12Elfogadva2/2331ms3000 KiB
13Elfogadva2/2316ms3036 KiB
14Elfogadva2/2319ms3048 KiB
15Elfogadva2/2310ms3064 KiB
16Elfogadva2/2307ms3072 KiB
17Elfogadva2/2312ms3084 KiB
18Elfogadva2/2308ms3120 KiB
19Elfogadva2/2314ms3108 KiB
20Elfogadva3/3321ms3128 KiB
21Elfogadva3/3317ms3152 KiB
22Elfogadva3/3316ms3152 KiB
23Elfogadva3/3317ms3184 KiB