Submission #923388

#TimeUsernameProblemLanguageResultExecution timeMemory
923388vjudge1Hidden Sequence (info1cup18_hidden)C++11
44 / 100
12 ms2392 KiB
#include <bits/stdc++.h> #include "grader.h" using namespace std; // vector<int>s={0,0,1,1}; // bool isSubsequence(vector<int>t){ // int p=0; // for(auto u:s){ // if(p<t.size() and u==t[p]){ // p++; // } // } // return p==t.size(); // } vector<int>findSequence(int n){ if(n<=10){ map<set<string>,string>cnt; for(int i=0;i<(1<<n);i++){ string s=""; for(int j=0;j<n;j++){ if((i>>j)&1){ s+='1'; }else{ s+='0'; } } set<string>e; for(int r=(n/2+1);r<=(n/2+1);r++){ for(int k=0;k<(1<<(r));k++){ string t=""; for(int j=0;j<(r);j++){ if((k>>j)&1){ t+='1'; }else{ t+='0'; } } int p=0; for(auto u:s){ if(p<t.size() and u==t[p]){ p++; } } if(p==t.size()){ e.insert(t); } } } cnt[e]=s; } set<string>e; for(int r=(n/2+1);r<=(n/2+1);r++){ for(int k=0;k<(1<<(r));k++){ vector<int>t; string y=""; for(int j=0;j<(r);j++){ if((k>>j)&1){ t.push_back(1); y+='1'; }else{ t.push_back(0); y+='0'; } } if(isSubsequence(t)){ e.insert(y); } } } vector<int>ans; for(auto u:cnt[e]){ ans.push_back(u-'0'); } return ans; } vector<int>t; while(t.size()<=n and isSubsequence(t)){ t.push_back(t.size()%2); } t.pop_back(); if(t.size()<n){ t.insert(t.begin(),1); if(!isSubsequence(t)){ t.erase(t.begin()); } } vector<int>ans; for(int i=0;i<t.size();i++){ vector<int>r=t; int cnt=0; while(r.size()<=n and isSubsequence(r)){ r.insert(r.begin()+i+cnt,t[i]); cnt++; } for(int j=1;j<=cnt;j++){ ans.push_back(t[i]); } } // for(auto u:ans){ // cout<<u<<' '; // } // cout<<endl; return ans; }

Compilation message (stderr)

hidden.cpp: In function 'std::vector<int> findSequence(int)':
hidden.cpp:39:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   39 |                     if(p<t.size() and u==t[p]){
      |                        ~^~~~~~~~~
hidden.cpp:43:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   43 |                 if(p==t.size()){
      |                    ~^~~~~~~~~~
hidden.cpp:76:19: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   76 |     while(t.size()<=n and isSubsequence(t)){
      |           ~~~~~~~~^~~
hidden.cpp:80:16: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   80 |     if(t.size()<n){
      |        ~~~~~~~~^~
hidden.cpp:87:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   87 |     for(int i=0;i<t.size();i++){
      |                 ~^~~~~~~~~
hidden.cpp:90:23: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   90 |         while(r.size()<=n and isSubsequence(r)){
      |               ~~~~~~~~^~~
grader.cpp: In function 'int main()':
grader.cpp:28:26: warning: format '%d' expects argument of type 'int', but argument 3 has type 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wformat=]
   28 |     fprintf (fifo_out, "%d\n", ans.size ());
      |                         ~^     ~~~~~~~~~~~
      |                          |              |
      |                          int            std::vector<int>::size_type {aka long unsigned int}
      |                         %ld
grader.cpp:29:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   29 |     for (int i=0; i<ans.size () && i < N; i++)
      |                   ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...