1042 2022. 02. 27 11:51:57 Szin Attila Főzet készítés cpp14 Elfogadva 50/50 331ms 3184 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 Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 303ms 2828 KiB
2 Elfogadva 0/0 310ms 2916 KiB
3 Elfogadva 3/3 300ms 2904 KiB
4 Elfogadva 2/2 319ms 2908 KiB
5 Elfogadva 3/3 312ms 2928 KiB
6 Elfogadva 2/2 321ms 2920 KiB
7 Elfogadva 3/3 326ms 2924 KiB
8 Elfogadva 2/2 314ms 2960 KiB
9 Elfogadva 3/3 314ms 2964 KiB
10 Elfogadva 2/2 308ms 2984 KiB
11 Elfogadva 2/2 312ms 2996 KiB
12 Elfogadva 2/2 331ms 3000 KiB
13 Elfogadva 2/2 316ms 3036 KiB
14 Elfogadva 2/2 319ms 3048 KiB
15 Elfogadva 2/2 310ms 3064 KiB
16 Elfogadva 2/2 307ms 3072 KiB
17 Elfogadva 2/2 312ms 3084 KiB
18 Elfogadva 2/2 308ms 3120 KiB
19 Elfogadva 2/2 314ms 3108 KiB
20 Elfogadva 3/3 321ms 3128 KiB
21 Elfogadva 3/3 317ms 3152 KiB
22 Elfogadva 3/3 316ms 3152 KiB
23 Elfogadva 3/3 317ms 3184 KiB