Submission #66471

#TimeUsernameProblemLanguageResultExecution timeMemory
66471thiago4532Martian DNA (IOI16_dna)C++17
100 / 100
19 ms764 KiB
#include "dna.h" #include <bits/stdc++.h> #define zz(x) string(x, '0') using namespace std; int n; string str; int buscab(){ int ini=0, fim=n+1, meio; while(fim - ini > 1){ meio = (ini + fim) >> 1; string s = zz(meio); if(make_test(s)) ini = meio; else fim = meio; } return ini; } int buscab2(){ int ini=0, fim=str.size(), meio; while(fim - ini > 1){ meio = (ini + fim) >> 1; string s = str.substr(0, meio+1); if(make_test(s)) ini = meio; else fim = meio; } return ini; } string analyse(int k, int t){ n = k; str = zz(buscab()); int qtd = str.size(); while(str.size() < n){ if(make_test(str+"1")){ str += "1"; continue; } str += "0"; int x=0; for(int i=str.size()-1;i>=0;i--){ if(str[i] == '1') break; ++x; } if(x > qtd) break; } str = str.substr(0, buscab2()+1); while(str.size() < n){ if(make_test("0"+str)) str = "0"+str; else str = "1"+str; } return str; }

Compilation message (stderr)

dna.cpp: In function 'std::__cxx11::string analyse(int, int)':
dna.cpp:43:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while(str.size() < n){
           ~~~~~~~~~~~^~~
dna.cpp:61:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while(str.size() < n){
           ~~~~~~~~~~~^~~
grader.cpp: In function 'bool make_test(std::__cxx11::string)':
grader.cpp:14:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 0; i < p.size(); i++) {
                  ~~^~~~~~~~~~
grader.cpp:23:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 1; i <= ss.size(); i++) {
                  ~~^~~~~~~~~~~~
grader.cpp:28:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if (pr[i] == p.size()) {
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...