Submission #133837

#TimeUsernameProblemLanguageResultExecution timeMemory
133837KastandaNice sequence (IZhO18_sequence)C++11
76 / 100
127 ms9108 KiB
// ItnoE
#include<bits/stdc++.h>
using namespace std;
const int N = 200005;
int n, m, q, k, ts, A[N];
void DFS(int v)
{
    if (v - n >= 0 && !A[v - n])
        DFS(v - n);
    if (v + m <= k && !A[v + m])
        DFS(v + m);
    A[v] = ++ ts;
}
int main()
{
    scanf("%d", &q);
    for (; q; q --)
    {
        scanf("%d%d", &n, &m);
        k = n + m - __gcd(n, m) - 1;
        for (int i = 0; i <= k; i ++)
            if (!A[i]) DFS(i);
        printf("%d\n", k);
        for (int i = 0; i < k; i ++)
            printf("%d ", A[i] - A[i + 1]);
        printf("\n");
        for (int i = 0; i <= k; i ++)
            A[i] = 0;
        ts = 0;
    }
    return 0;
}

Compilation message (stderr)

sequence.cpp: In function 'int main()':
sequence.cpp:16:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &q);
     ~~~~~^~~~~~~~~~
sequence.cpp:19:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d%d", &n, &m);
         ~~~~~^~~~~~~~~~~~~~~~
#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...