Submission #73501

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
735012018-08-28 11:03:51MKopchevScales (IOI15_scales)C++14
100 / 100
141 ms1132 KiB
#include<bits/stdc++.h>
#include "scales.h"
using namespace std;
vector< vector<int> > active;
vector<int> all;
map< vector< vector<int> >,bool > seen[15];
int maxi(int a,int b,int c)
{
return max(max(a,b),c);
}
int mini(int a,int b,int c)
{
return min(min(a,b),c);
}
int lim[10]={1,3,9,27,81,243,729,2187,6561};
bool can(int tests,vector< vector<int> > &now)
{
//cout<<tests<<" "<<now.size()<<endl;
if(now.size()<=1)return 1;
if(lim[tests]<now.size())return 0;
if(seen[tests].count(now))return seen[tests][now];
for(int i=0;i<6;i++)
for(int j=i+1;j<6;j++)
for(int p=j+1;p<6;p++)
{
vector< vector<int> > a1={},a2={},a3={};
for(auto k:now)
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

In file included from grader.c:2:0:
graderlib.c: In function 'void answer(int*)':
graderlib.c:53:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
     if (_ghksjhdfkae19ga_ > 1) 
     ^~
graderlib.c:56:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  for (i = 0; i < 6; i++) {
  ^~~
scales.cpp: In function 'bool can(int, std::vector<std::vector<int> >&)':
scales.cpp:22:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 if(lim[tests]<now.size())return 0;
    ~~~~~~~~~~^~~~~~~~~~~
scales.cpp:36:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:36:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                    ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:36:72: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:52:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:52:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                    ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:52:72: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:68:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:68:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                    ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:68:72: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:103:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:103:52: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                        ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:103:76: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                                ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:73:1: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
 for(int i=0;i<6;i++)
 ^~~
scales.cpp:108:5: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
     seen[tests][now]=0;
     ^~~~
scales.cpp: In function 'void write(int, std::vector<std::vector<int> >&)':
scales.cpp:138:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:138:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                    ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:138:72: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:161:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:161:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                    ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:161:72: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:184:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:184:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                    ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:184:72: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                            ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:226:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:226:52: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                        ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp:226:76: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             if(lim[tests-1]<a1.size()||lim[tests-1]<a2.size()||lim[tests-1]<a3.size())continue;
                                                                ~~~~~~~~~~~~^~~~~~~~~~
scales.cpp: In function 'void init(int)':
scales.cpp:241:15: warning: unused parameter 'T' [-Wunused-parameter]
 void init(int T)
               ^
#Verdict Execution timeMemoryGrader output
Fetching results...