解题思路:
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int n;
char s[8001];
int ans,i,j,k,t,l,flag;
scanf("%d\n\n",&n); 这里有坑
gets(s);
flag=0;ans=0;k=0;
i=0;j=n-1;
while(i<j)
{
t=j;
while(s[t]!=s[i]&&t>i)
t--;
if(t==i)
{
if(n%2==0||flag)
{
printf("Impossible\n");
return 0;
}
flag=1;
k=k+n/2-i;
i++;
}
else
{
for(l=t;l<j;l++)
{
s[l]=s[l+1];
k++;
}
i++;j--;
}
}
printf("%d\n",k);
return 0;
}
0.0分
0 人评分
矩阵转置 (C语言代码)浏览:1525 |
C语言训练-立方和不等式 (C语言代码)浏览:751 |
C语言训练-计算一个整数N的阶乘 (C语言代码)浏览:936 |
【绝对值排序】 (C++代码)浏览:672 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:672 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题6.3 (C++代码)浏览:963 |
C语言训练-亲密数 (C语言代码)浏览:682 |
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:537 |
判定字符位置 (C语言代码)浏览:799 |