栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 1854 Evil Straw Warts Live

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 1854 Evil Straw Warts Live

#include <iostream>#include <cstdio>#include <cmath>#include <cstring>#include <string>#include <algorithm>#include <map>#include <vector>#include <stack>#include <queue>#define REP(i,x,v) for(int i=x;i<=v;i++)#define REPD(i,x,v) for(int i=x;i>=v;i--)#define FOR(i,v) for(int i=0;i<v;i++)#define CLR(x,y) memset(x,y,sizeof(x))#define pb push_back#define sz size()#define mp make_pair#define fi first#define se second#define LL long long#define cz(x) scanf("%d",&(x))#define cz2(x,y) scanf("%d%d", &(x), &(y))#define cz3(x,y,z) scanf("%d%d%d", &(x), &(y), &(z))#define MAXN 8000+50using namespace std;typedef pair<int, int> pii;typedef vector<int> vi;char str[MAXN];int digit[26], len;int cnt;int ans = 0;int main(){    int num;    cz(num);    while(num--){        cnt = 0;        ans = 0;        CLR(digit, 0);        scanf("%s", str);        int len = strlen(str);        FOR(i, len){ digit[str[i]-'a']++;        }        FOR(i, 26){ if(digit[i] & 0x1){     cnt++; }        }        if(cnt >= 2){ printf("Impossiblen");        }        else{ FOR(i, len/2){     char value = str[i];     bool flag = false;     for(int j = len-1-i; j > i; --j){         if(str[i] == str[j]){  flag = true;  for(int k = j; k < len-i-1; ++k){      str[k] = str[k+1];      ans++;  }  str[len-i-1] = value;  break;         }     }     if(!flag){         char tmp;         tmp = str[i];         str[i] = str[i+1];         str[i+1] = tmp;         ans++;         --i;     } } printf("%dn", ans);        }    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/378729.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号