Submission #1029450

#TimeUsernameProblemLanguageResultExecution timeMemory
1029450vjudge1CATS (NOI14_cats)C++11
8 / 25
1521 ms262144 KiB
#include <bits/stdc++.h>
#define F first
#define S second
using namespace std;
typedef long long ll;
typedef vector<ll> vll;
ll X,L,N,t;
int main(){
    scanf("%lld",&t);
    while(t--){
        scanf("%lld %lld %lld",&X,&L,&N);
        ll con=X;
        vector<pair<ll,ll>> S1;
        ll flip=0;
        while(con>0){
            ll T1;
            ll aux;
            if(S1.empty()){
                T1=0;
                aux=0;
            }else{
                T1=S1.back().F;
                aux=S1.back().S;
                S1.pop_back();
            }
            if((flip-aux)%2==1){
                T1^=1;
            }
            //FLIP LAST BINARY BIT OF ALL NUMBERS IN S1
            flip++;
            if(T1>L){
                con--;
                if(con==0){
                    printf("%lld\n",T1);
                }
            }else{
                ll f1=T1+2*N;
                S1.push_back({f1,flip});
                S1.push_back({f1,flip});
            }
        }
    }
}

Compilation message (stderr)

cats.cpp: In function 'int main()':
cats.cpp:9:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
    9 |     scanf("%lld",&t);
      |     ~~~~~^~~~~~~~~~~
cats.cpp:11:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 |         scanf("%lld %lld %lld",&X,&L,&N);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...