結果
| 問題 |
No.1617 Palindrome Removal
|
| コンテスト | |
| ユーザー |
👑 |
| 提出日時 | 2021-07-22 22:28:13 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 598 bytes |
| コンパイル時間 | 316 ms |
| コンパイル使用メモリ | 28,928 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-17 18:34:03 |
| 合計ジャッジ時間 | 1,401 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 WA * 2 |
| other | AC * 6 WA * 14 |
ソースコード
#include <stdio.h>
int is_palindrome(char S[])
{
int i, j;
for (j = 0; S[j] != 0; j++);
for (i = 0, j--; i < j; i++, j--) if (S[i] != S[j]) break;
if (i < j) return 0;
else return 1;
}
int is_unique(char S[])
{
int i;
for (i = 1; S[i] != 0; i++) if (S[i] != S[0]) break;
if (S[i] != 0) return 0;
else return 1;
}
int main()
{
int l;
char S[1000001];
scanf("%s", S);
for (l = 0; S[l] != 0; l++);
if (is_palindrome(S) == 0) printf("%d\n", l);
else if (is_unique(S) != 0) printf("%d\n", l - 2);
else if (l % 2 == 0) printf("0\n");
else printf("-1\n");
fflush(stdout);
return 0;
}