답안 #869571

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
869571 2023-11-04T18:46:39 Z alexdd Nice sequence (IZhO18_sequence) C++17
15 / 100
2000 ms 1116 KB
#include<bits/stdc++.h>
using namespace std;
int rez[1000005];
int krez;
const int INF = 1e9;
/**
n = 4
m = 11
1 1 1 -4 1 1 1 -4 1 2
*/
void solve(int n, int m)
{
    if(n==3 && m==4)
    {
        while(1)
            n=1;
        return;
    }
    if(n==m)
    {
        krez=n-1;
        for(int i=1;i<n;i++)
            rez[i]=1;
        return;
    }
    if(m%n==0)
    {
        krez=m-1;
        for(int i=1;i<m;i++)
            rez[i]=-1;
        return;
    }
    if(n==2)
    {
        krez=m;
        for(int i=1;i<=m;i++)
        {
            if(i%2==1)
                rez[i]=INF/2;
            else
                rez[i]=-(INF/2+1);
        }
        return;
    }
    while(m%n!=n-1)
        m++;
    krez=m;
    int ult=n;
    int val=(INF-1)/(n-1);
    for(int i=n;i<=m;i+=n)
    {
        for(int j=i-n+1;j<i;j++)
            rez[j]=val;
        rez[i]=-(n-1)*val-1;
        ult=i;
    }
    for(int j=ult+1;j<=m;j++)
        rez[j]=val;
}
signed main()
{
    //ios_base::sync_with_stdio(0);cin.tie(0);
    int t;
    cin>>t;
    while(t--)
    {
        int n,m;
        cin>>n>>m;
        bool bl=0;
        if(n>m)
        {
            swap(n,m);
            bl=1;
        }
        solve(n,m);
        cout<<krez<<"\n";
        for(int i=1;i<=krez;i++)
        {
            if(!bl)
                cout<<rez[i]<<" ";
            else
                cout<<-rez[i]<<" ";
        }
        cout<<"\n";
    }
    return 0;
}
/**

pref[i] - pref[i-n] < 0
pref[i] - pref[i-m] > 0

pref[i-n] > pref[i]
pref[i-m] < pref[i]


n = 4
m = 11
1 1 1 -4 1 1 1 -4 1 1 1 -4 1 1 1

n = 3
m = 8
3 3 -7 3 3 -7 3 3 -7



m - 2 * m/n > 0

n = 2
m = 11
5 -6 5 -6 5 -6 5
499999999
999999999
*/
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Ok
2 Correct 0 ms 348 KB Ok
3 Correct 0 ms 348 KB Ok
4 Correct 0 ms 348 KB Ok
5 Correct 1 ms 348 KB Ok
6 Correct 0 ms 348 KB Ok
7 Correct 0 ms 348 KB Ok
8 Correct 0 ms 348 KB Ok
9 Correct 0 ms 348 KB Ok
10 Correct 0 ms 348 KB Ok
11 Correct 1 ms 344 KB Ok
12 Correct 0 ms 344 KB Ok
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Ok
2 Correct 0 ms 348 KB Ok
3 Correct 0 ms 348 KB Ok
4 Correct 1 ms 348 KB Ok
5 Correct 0 ms 348 KB Ok
6 Correct 1 ms 348 KB Ok
7 Correct 6 ms 1112 KB Ok
8 Correct 3 ms 600 KB Ok
9 Correct 6 ms 1116 KB Ok
10 Correct 4 ms 604 KB Ok
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Ok
2 Correct 0 ms 348 KB Ok
3 Correct 0 ms 348 KB Ok
4 Execution timed out 2059 ms 348 KB Time limit exceeded
5 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2047 ms 344 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Ok
2 Correct 0 ms 348 KB Ok
3 Correct 0 ms 348 KB Ok
4 Correct 0 ms 348 KB Ok
5 Correct 1 ms 348 KB Ok
6 Correct 0 ms 348 KB Ok
7 Correct 0 ms 348 KB Ok
8 Correct 0 ms 348 KB Ok
9 Correct 0 ms 348 KB Ok
10 Correct 0 ms 348 KB Ok
11 Correct 1 ms 344 KB Ok
12 Correct 0 ms 344 KB Ok
13 Correct 0 ms 348 KB Ok
14 Correct 0 ms 348 KB Ok
15 Correct 0 ms 348 KB Ok
16 Execution timed out 2059 ms 348 KB Time limit exceeded
17 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Ok
2 Correct 0 ms 348 KB Ok
3 Correct 0 ms 348 KB Ok
4 Correct 0 ms 348 KB Ok
5 Correct 1 ms 348 KB Ok
6 Correct 0 ms 348 KB Ok
7 Correct 0 ms 348 KB Ok
8 Correct 0 ms 348 KB Ok
9 Correct 0 ms 348 KB Ok
10 Correct 0 ms 348 KB Ok
11 Correct 1 ms 344 KB Ok
12 Correct 0 ms 344 KB Ok
13 Correct 0 ms 348 KB Ok
14 Correct 0 ms 348 KB Ok
15 Correct 0 ms 348 KB Ok
16 Correct 1 ms 348 KB Ok
17 Correct 0 ms 348 KB Ok
18 Correct 1 ms 348 KB Ok
19 Correct 6 ms 1112 KB Ok
20 Correct 3 ms 600 KB Ok
21 Correct 6 ms 1116 KB Ok
22 Correct 4 ms 604 KB Ok
23 Correct 0 ms 348 KB Ok
24 Correct 0 ms 348 KB Ok
25 Correct 0 ms 348 KB Ok
26 Execution timed out 2059 ms 348 KB Time limit exceeded
27 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Ok
2 Correct 0 ms 348 KB Ok
3 Correct 0 ms 348 KB Ok
4 Correct 0 ms 348 KB Ok
5 Correct 1 ms 348 KB Ok
6 Correct 0 ms 348 KB Ok
7 Correct 0 ms 348 KB Ok
8 Correct 0 ms 348 KB Ok
9 Correct 0 ms 348 KB Ok
10 Correct 0 ms 348 KB Ok
11 Correct 1 ms 344 KB Ok
12 Correct 0 ms 344 KB Ok
13 Correct 0 ms 348 KB Ok
14 Correct 0 ms 348 KB Ok
15 Correct 0 ms 348 KB Ok
16 Correct 1 ms 348 KB Ok
17 Correct 0 ms 348 KB Ok
18 Correct 1 ms 348 KB Ok
19 Correct 6 ms 1112 KB Ok
20 Correct 3 ms 600 KB Ok
21 Correct 6 ms 1116 KB Ok
22 Correct 4 ms 604 KB Ok
23 Correct 0 ms 348 KB Ok
24 Correct 0 ms 348 KB Ok
25 Correct 0 ms 348 KB Ok
26 Execution timed out 2059 ms 348 KB Time limit exceeded
27 Halted 0 ms 0 KB -