제출 #199256

#제출 시각아이디문제언어결과실행 시간메모리
199256alextodoranNice sequence (IZhO18_sequence)C++14
15 / 100
12 ms1144 KiB
#include <bits/stdc++.h>

using namespace std;

const int N_MAX = 200002;

const int INF = 1e9;

int t;

int n, m;

int ans[N_MAX];

int pref[N_MAX];

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cin >> t;
    while(t--)
    {
        cin >> n >> m;
        bool swaped = false;
        if(n > m)
        {
            swap(n, m);
            swaped = true;
        }
        if(n == 1 || m % n == 0)
        {
            cout << m - 1 << "\n";
            for(int i = 1; i <= m - 1; i++)
                if(swaped == true)
                    cout << "1 ";
                else
                    cout << "-1 ";
            cout << "\n";
            continue;
        }
        int val = (INF - 1) / (n - 1);
        for(int i = 1; i < n; i++)
        {
            ans[i] = val;
            if(i < INF - val * (n - 1))
                ans[i]++;
        }
        ans[n] = -INF;
        for(int i = 1; i <= n; i++)
            if(swaped == true)
                ans[i] *= -1;
        cout << m << "\n";
        long long s = 0;
        for(int i = 1; i <= m; i++)
        {
            if(i > n)
                ans[i] = ans[i - n];
            s += ans[i];
            cout << ans[i] << " ";
        }
        cout << "\n";
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...