結果
問題 | No.588 空白と回文 |
ユーザー |
![]() |
提出日時 | 2018-03-26 13:26:06 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 1,271 bytes |
コンパイル時間 | 785 ms |
コンパイル使用メモリ | 85,844 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-25 06:45:33 |
合計ジャッジ時間 | 1,537 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 25 |
ソースコード
#include <iostream>#include <vector>#include <string>#include <algorithm>#include <utility>#include <stack>#include <functional>#include <queue>#include <cmath>#include <set>#include <map>#include <numeric>#define rep(i,j,k) for(int i=(int)j;i<(int)k;i++)#define Sort(x) sort((x).begin(),(x).end())#define all(x) (x).begin(),(x).end()#define fi first#define se second#define vi vector<int>#define INF (int)1e9#define INFL 1e18#define MOD 1000000007#define pb push_back#define MP make_pairtypedef long long int ll;typedef std::pair<int,int> P;int D=1;int dx[4]={0,1,0,-1},dy[4]={1,0,-1,0};using namespace std;int main(){string s;cin>>s;int ans=0;rep(i,0,s.size()){string ss=s.substr(i,s.size()-i);int subans=0;rep(j,0,ss.size()/2){if(ss[j]==ss[ss.size()-j-1])subans+=2;}if(ss.size()%2==1)subans++;ans=max(ans,subans);}reverse(all(s));rep(i,0,s.size()){string ss=s.substr(i,s.size()-i);int subans=0;rep(j,0,ss.size()/2){if(ss[j]==ss[ss.size()-j-1])subans+=2;}if(ss.size()%2==1)subans++;ans=max(ans,subans);}cout<<ans<<endl;return 0;}