제출 #775146

#제출 시각아이디문제언어결과실행 시간메모리
775146anha3k25cvpMartian DNA (IOI16_dna)C++14
0 / 100
138 ms456 KiB
#include <bits/stdc++.h>
#include "dna.h"

using namespace std;

string analyse(int n, int t) {
    int type = 0;
    string ans;
    while (n) {
        type ^= 1;
        string S = ans;
        S += '0' + type;
        int add_left = make_test(S);
        if (add_left) {
            int lo = 1, hi = n;
            while (lo < hi) {
                int mid = (lo + hi + 1) / 2;
                S = ans;
                for (int i = 1; i <= mid; i ++)
                    S += '0' + type;
                int val = make_test(S);
                if (val)
                    lo = mid;
                else
                    hi = mid - 1;
            }
            n -= lo;
            for (int i = 1; i <= lo; i ++)
                ans += '0' + type;
            continue;
        }
        int lo = 1, hi = n;
        while (lo < hi) {
            int mid = (lo + hi + 1) / 2;
            for (int i = 1; i <= mid; i ++)
                S += '0' + type;
            S += ans;
            int val = make_test(S);
            if (val)
                lo = mid;
            else
                hi = mid - 1;
        }
        n -= lo;
        for (int i = 1; i <= lo; i ++)
            ans = char('0' + type) + ans;
    }
    return ans;
}

컴파일 시 표준 에러 (stderr) 메시지

grader.cpp: In function 'bool make_test(std::string)':
grader.cpp:14:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |  for (int i = 0; i < p.size(); i++) {
      |                  ~~^~~~~~~~~~
grader.cpp:23:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |  for (int i = 1; i <= ss.size(); i++) {
      |                  ~~^~~~~~~~~~~~
grader.cpp:28:13: warning: comparison of integer expressions of different signedness: '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |   if (pr[i] == p.size()) {
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...