/ SeriousOJ /

Record Detail

Compile Error

foo.cc:29:1: error: '::main' must return 'int'
   29 | void main()
      | ^~~~

Code

/*
 *   Copyright (c) 2025 Emon Thakur
 *   All rights reserved.
 */
#include<bits/stdc++.h>
using namespace std;
char sg[800005];
void build(int node,int start,int end,string &s)
{
    if(start == end)
    {
        sg[node] = s[start];
        return;
    }
    int mid = (start + end)/2;
    build(node*2,start,mid,s);
    build(node*2+1,mid+1,end,s);
    sg[node] = min(sg[node*2] , sg[node*2+1]);
}

char query(int node,int start,int end,int l,int r)
{
    if(l>end || r<start) return ('z'+1);
    if(l<=start && r>=end) return sg[node];
    int mid = (start + end)/2;
    return min(query(node*2,start,mid,l,r) , query(node*2+1,mid+1,end,l,r));
}

void main()
{
    // string outp = "output"+to_string(tc)+".txt";
    // string inp = "input"+to_string(tc)+".txt";
    // ofstream file(outp);
    // freopen(inp.c_str(),"r",stdin);

    int n,k; cin >> n >> k;
    string s; cin >> s;
    build(1,0,n-1,s);

    for(int i=0;i+k<=n;i++)
    {
        char mn = query(1,0,n-1,i,i+k-1);
        if(mn < s[i] || i+k==n) sort(s.begin()+i,s.begin()+i+k) , i+=(k-1);
    }
    cout<<s<<endl;
}

// int main()
// {
//     for(int i=0;i<100;i++) main2(i);
// }

Information

Submit By
Type
Submission
Problem
P1230 Lexicographically Smallest Rearrangement
Language
C++17 (G++ 13.2.0)
Submit At
2025-08-30 15:55:50
Judged At
2025-08-30 15:55:50
Judged By
Score
0
Total Time
0ms
Peak Memory
0 Bytes