CSES - Datatähti 2022 alku - Results
Submission details
Task:Spiraali (Spiral)
Sender:mooc.fi~486604
Submission time:2021-10-04 11:04:42
Language:C++11
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED15
#2ACCEPTED20
#3ACCEPTED65
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1details
#2ACCEPTED0.01 s2details
#3ACCEPTED0.01 s3details

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:10:32: warning: unused variable 'k' [-Wunused-variable]
     long long int n,t,a, b, c, k,i;
                                ^

Code

#include<iostream>
#include<cmath>
#include<vector>

using namespace std; 
 char d[16]={'a','b','c','d','e','f','g','h','i','j','k','l',
 'm','n','o','p'};

int main(){
    long long int n,t,a, b, c, k,i;

    cin>>n>>t; 
    long long int p1[t];
    long long int p2[t];
    for(i=0; i<t; i++){
        cin>>a>>b;
        p1[i]=a;
        p2[i]=b;
    }
    for(i=0; i<t; i++){
        long long int y=p1[i];
        long long int x=p2[i];
        long long int ab1= abs(n-x); 
        long long int ab2 = abs(n-y); 
        c=min(ab1, ab2);
        c=min(x-1, c);
        c=min(y-1,c);
        long long int sum=4*((c*n)-(c*c));
       

        long long int ppp= n-2*c-1;
        if (sum==n*n){
            cout<<sum<<endl;
            return 0; 
        }
        if(x==c+1){
            sum+=y-c;
        }
        else if(c==n-x){
            sum+=2*ppp+1+n-y-c;
        }
        else if(c+1==y){
            sum+=ppp*3+n-x-c+1;
        }
        else{
            sum+=ppp+x-c;
        }
        cout<<sum<<endl; 

        
        
    }




  
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
10 100
1 1
1 2
1 3
1 4
...

correct output
1
36
35
34
33
...

user output
1
36
35
34
33
...

Test 2

Group: 2

Verdict: ACCEPTED

input
1000 1000
371 263
915 322
946 880
53 738
...

correct output
773533
312166
206053
200080
593922
...

user output
773533
312166
206053
200080
593922
...

Test 3

Group: 3

Verdict: ACCEPTED

input
1000000000 1000
177757853 827347032
409613589 419171337
739269360 256524697
328695530 896842209
...

correct output
571375684522141210
967321186816598569
762879105851175000
370065046779516790
936897883750373771
...

user output
571375684522141210
967321186816598569
762879105851175000
370065046779516790
936897883750373771
...