Submission #482865

#TimeUsernameProblemLanguageResultExecution timeMemory
482865MohamedAliSaidanePalindromic Partitions (CEOI17_palindromic)C++14
60 / 100
10064 ms4664 KiB
#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> pii;
typedef vector<int> vi;
typedef long long ll;
typedef pair<ll,ll> pll;
typedef tuple<int,int,int> ti;
typedef unsigned long long ull;
typedef long double ld;
typedef vector<ll> vll;
typedef pair<ld,ld> pld;
#define pb push_back
#define popb pop_back()
#define pf push_front
#define popf pop_front
#define ff first
#define ss second
#define MOD (ll)(1000000007)
#define INF (ll) (1e18)
#define all(v) (v).begin(),(v).end()
const int nx[8] = {0, 0, 1, -1,1,1,-1,-1}, ny[8] = {1, -1, 0, 0,1,-1,1,-1}; //East, West, South, North+
ll gcd(ll a , ll b) {return b ? gcd(b , a % b) : a ;}

////////////******SOLUTION******\\\\\\\\\\\

string s, t;
int n;

void solve()
{
    cin >> s;
    n = s.length();
    t = s;
    reverse(all(t));
    int ans = 0;
    int i = 0;
    while(i <= n/2-1 + n%2)
    {
        if(s[i] != s[n-i-1])
        {
            string str = "";
            string comp = "";
            str += s[i];
            comp += t[i];
            while(str != comp)
            {
                i ++;
                str += s[i];
                comp = s[n-i-1] + comp;
            }
        }
        ans += 2;
        if(i >= n/2)
            ans --;
        i ++;
    }
    cout << ans << '\n';
}
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0); cout.tie(0);
    int tt; cin >> tt;
    while(tt--)
        solve();
}

Compilation message (stderr)

palindromic.cpp:24:1: warning: multi-line comment [-Wcomment]
   24 | ////////////******SOLUTION******\\\\\\\\\\\
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...