Submission #382971

# Submission time Handle Problem Language Result Execution time Memory
382971 2021-03-28T16:08:01 Z victoriad Relativnost (COCI15_relativnost) C++14
0 / 140
4000 ms 12780 KB
#include <fstream>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
#include <utility>
#include <queue>
using namespace std;
int mod=10007;
void per(vector<int>&a,vector<int>&b,int & r,vector<int>&p,int i,int c,int nec,int u,int j){
if(u==a.size()){
    if(c>=nec){
        r+=j;
        r=r%mod;
        }
    
    return;
}
u++;
p[i]=0;

per(a,b,r,p,i+1,c,nec,u,(j*b[i])%mod);
p[i]=1;

per(a,b,r,p,i+1,c+1,nec,u,(j*a[i])%mod);
}


int main() {
    ios::sync_with_stdio(false);
    cin.tie(NULL);
    int n,c,q,p,l,r;
    cin>>n>>c;
    vector<int >a(n);
     vector<int>b(n);
     for(int i=0;i<n;i++){
         cin>>a[i];
     }
     for(int i=0;i<n;i++){
         cin>>b[i];
     }
     cin>>q;
     int re;
     for(int i=0;i<q;i++){
         vector<int>pr(n,0);
         cin>>p>>l>>r;
         if(i==0){
             if(c==n){
                a[p-1]=l;
                re=1;
                for(int k=0;k<n;k++){
                    re*=a[k];
                    re=re%mod;
                }
             }
             else{
                a[p-1]=l;
                b[p-1]=r;
                re=0;
                per(a,b,re,pr,0,0,c,0,1); 
             }
             cout<<re%mod<<"\n";
         }
         else if(i!=0 && a[p-1]==l&& b[p-1]==r){
             cout<<re%mod<<"\n";
         }
         else if(n==c){
             re/=a[p-1];
             re*=l;
             a[p-1]=l;
             cout<<re%mod<<"\n";
         }
         else{
            a[p-1]=l;
         b[p-1]=r;
         re=0;
         per(a,b,re,pr,0,0,c,0,1);
        cout<<re%mod<<"\n"; 
         }
         
     }

  return 0;
}








Compilation message

relativnost.cpp: In function 'void per(std::vector<int>&, std::vector<int>&, int&, std::vector<int>&, int, int, int, int, int)':
relativnost.cpp:11:5: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 | if(u==a.size()){
      |    ~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Execution timed out 4062 ms 492 KB Time limit exceeded
2 Execution timed out 4065 ms 492 KB Time limit exceeded
3 Execution timed out 4067 ms 364 KB Time limit exceeded
4 Execution timed out 4077 ms 7532 KB Time limit exceeded
5 Execution timed out 4078 ms 12012 KB Time limit exceeded
6 Execution timed out 4081 ms 12780 KB Time limit exceeded
7 Execution timed out 4065 ms 8952 KB Time limit exceeded
8 Execution timed out 4075 ms 12652 KB Time limit exceeded
9 Execution timed out 4017 ms 10476 KB Time limit exceeded
10 Execution timed out 4067 ms 9964 KB Time limit exceeded