답안 #543709

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
543709 2022-03-31T09:10:19 Z Sho10 Martian DNA (IOI16_dna) C++17
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h> //Andrei Alexandru a.k.a Sho
#include "dna.h"
using ll=long long;
using ld=long double;
int const INF=1000000005;
ll const LINF=1000000000000000005;
ll const mod=1000000007;
ld const PI=3.14159265359;
ll const MAX_N=3e5+5;
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#define f first
#define s second
#define pb push_back
#define mp make_pair
#define endl '\n'
#define CODE_START  ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
ll check(ll mx){
string a="0";
for(ll i=0;i<mx;i++)
{
    a+='0';
    if(make_test(a)){
        continue;
    }
    a[a.size()-1]='1';
}
if(make_test(a)==0){
    return;
}
a+='0';
if(make_test(a)==0){
a[a.size()-1]='1';
}
if(make_test(a)==1){
return;
}
}
string analyse(int n,int t){
bool check=make_test(0);
if(check==0){
        string x="";
    for(ll i=0;i<n;i++)
    {
        x+='1';
    }
    return x;
}
ll l=1,r=(n-1),res=0;
while(l<=r){
    ll mid=(l+r)/2;
    if(check(mid)){
        res=mid;
    l=mid+1;
    }else {
    r=mid-1;
    }
}
string s="";
string ans="";
ans=+='0';
for(ll i=0;i<res;i++)
{
    ans+='0';
    if(make_test(ans)){
        continue;
    }else {
    ans[ans.size()-1]='1';
    }
}
for(ll i=0;i<(n-res-1);i++)
{
    ans='0'+ans;
    if(make_test(ans)){
        continue;
    }else {
    ans[0]='1';
    }
}
return ans;
}
/*
int32_t main(){
CODE_START;
#ifdef LOCAL
    ifstream cin("input.txt");
#endif
*/

Compilation message

dna.cpp: In function 'll check(ll)':
dna.cpp:30:5: error: return-statement with no value, in function returning 'll' {aka 'long long int'} [-fpermissive]
   30 |     return;
      |     ^~~~~~
dna.cpp:37:1: error: return-statement with no value, in function returning 'll' {aka 'long long int'} [-fpermissive]
   37 | return;
      | ^~~~~~
dna.cpp: In function 'std::string analyse(int, int)':
dna.cpp:53:17: error: 'check' cannot be used as a function
   53 |     if(check(mid)){
      |                 ^
dna.cpp:62:5: error: expected primary-expression before '+=' token
   62 | ans=+='0';
      |     ^~
dna.cpp: In function 'll check(ll)':
dna.cpp:20:10: warning: control reaches end of non-void function [-Wreturn-type]
   20 | string a="0";
      |          ^~~
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()) {