/ SeriousOJ /

Record Detail

Accepted


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 540.0 KiB
#2 Accepted 5ms 540.0 KiB
#3 Accepted 3ms 624.0 KiB
#4 Accepted 3ms 416.0 KiB
#5 Accepted 3ms 540.0 KiB
#6 Accepted 3ms 600.0 KiB
#7 Accepted 3ms 632.0 KiB
#8 Accepted 2ms 440.0 KiB
#9 Accepted 2ms 440.0 KiB
#10 Accepted 4ms 624.0 KiB
#11 Accepted 1ms 540.0 KiB
#12 Accepted 2ms 540.0 KiB
#13 Accepted 2ms 540.0 KiB
#14 Accepted 4ms 612.0 KiB
#15 Accepted 3ms 392.0 KiB

Code

#include<bits/stdc++.h>
using namespace std;
 
#define ll                      long long int
#define lld                     long double
//Ordered set(tree)
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
#define ordered_set             tree<ll, null_type, less<ll>, rb_tree_tag, tree_order_statistics_node_update>
#define multi_ordered_set       tree<ll, null_type, less_equal<ll>, rb_tree_tag, tree_order_statistics_node_update>
#define mxheap                  priority_queue<ll>
#define mnheap                  priority_queue<ll, vector<ll>, greater<ll>>
#define mxheap2                 priority_queue<pair<ll,ll>>
#define mnheap2                 priority_queue<pair<ll,ll>, vector<pair<ll,ll>>, greater<pair<ll,ll>>>
//Macros
#define FIO                     ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(NULL);
#define TC(t)                   int t; cin >> t; for(int i = 1; i <= t; i++)
#define ini(x, y)               memset(x, y, sizeof(x))
#define loop(i, a, b)           for(ll i = a; i <= b; i++)
#define loop2(i, b, a)          for(ll i = b; i >= a; i--)
#define pn                      cout << "NO\n";
#define py                      cout << "YES\n";
#define ed                      cout << "\n";
#define vrev(v)                 reverse(v.begin(),v.end());
#define vsort(v)                sort(v.begin(),v.end());
#define uni(v)                 v.erase(unique(v.begin(), v.end()), v.end()); // last it is like e set
#define vlowerB(v,x)            lower_bound(v.begin(), v.end(), x); 
#define vupperB(v,x)            upper_bound(v.begin(), v.end(), x); 
#define bits(x)                 __builtin_popcountll(x)
#define zrbits(x)               __builtin_ctzll(x)
//Constants
const ll M = 1e9 + 7;
const ll N = 1e5 + 5;
ll POW(ll a,ll b){ ll ans=1; while(b){ if(b&1) ans = (ans * a) % M; a = (a * a) % M; b >>= 1; } return ans; }
/*  Contest time:
    1. Check it is binary searce or not.
    2. DP or not.
    3. Segment Tree of not
    4. Hash or not.
    5. Number theory   
*/

void solve(){
    ll n, k; cin >> n >> k;
    string a[n+1];
    
    loop(i, 1, n){
        cin >> a[i];
    }
    string v;
    loop(i, 1, n-k) {
        string s;
        loop(j, i, i+k) s += a[j];
        if(s.size() > v.size()) v = s;
        else if(s.size() == v.size() && s > v) v = s;
    }
    
    cout << v; ed
    //cout << s; ed
}
 
int main(){
    FIO
    TC(t) 
    solve();
    return 0;
}

Information

Submit By
Type
Submission
Problem
P1083 Number concatenation
Contest
Bangladesh 2.0
Language
C++20 (G++ 13.2.0)
Submit At
2024-08-16 16:24:11
Judged At
2024-08-16 16:24:11
Judged By
Score
100
Total Time
5ms
Peak Memory
632.0 KiB