poj1256

poj1256

简单题

ContractedBlock.gif
ExpandedBlockStart.gif
View Code


#include
<
iostream
>

#include

<
cstdio
>

#include

<
cstdlib
>

#include

<
cstring
>

#include

<
algorithm
>


using

namespace
std;


char
st[
20
];

int
num[
20
];

int
n;

int
len;

char
ans[
20
];


bool
cmp(
const

char

&
a,
const

char

&
b)
{


int
x
=
a
–

‘
A
‘
;

int
y
=
b
–

‘
A
‘
;

if
(x
>=

26
)
x

-=

‘
a
‘

–

‘
A
‘
;

if
(y
>=

26
)
y

-=

‘
a
‘

–

‘
A
‘
;

if
(x
!=
y)

return
x
<
y;

return
a
<
b;
}


void
dfs(
int
a)
{


if
(a
==
len)
{

ans[a]

=

‘
\0
‘
;
printf(

“
%s\n
“
, ans);

return
;
}

for
(
int
i
=

0
; i
<
n; i
++
)

if
(num[i]
>

0
)
{

ans[a]

=
st[i];
num[i]

—
;
dfs(a

+

1
);
num[i]

++
;
}
}


int
main()
{


//
freopen(“t.txt”, “r”, stdin);



int
t;
scanf(

“
%d
“
,
&
t);

while
(t
—
)
{

scanf(

“
%s
“
, st);
sort(st, st

+
strlen(st), cmp);
memset(num,

0
,
sizeof
(num));

int
j
=

0
;
len

=
strlen(st);

for
(
int
i
=

0
; i
<
len; i
++
)

if
(st[i]
==
st[j])
num[j]

++
;

else

{

st[

++
j]
=
st[i];
num[j]

=

1
;
}
n

=
j
+

1
;
dfs(

0
);
}

return

0
;
}

转载于:https://www.cnblogs.com/rainydays/archive/2011/06/24/2089132.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110604.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Centos7 安装nginx1.16.0[通俗易懂]

    Centos7 安装nginx1.16.0[通俗易懂]一、环境配置nginx使用C语言进行开发,建议在linux环境下运行,本文只介绍linux下的安装1、gcc安装安装nginx需要先将官网上的源码下载下来进行编译,编译依赖gcc环境,如果系统中未装有gcc,则需要进行安装。执行如下命令安装gcc环境:yuminstallgcc-c++2、pcrepcre-devel安装PCRE(PerlCompatibleRegu…

    2022年6月9日
  • ubuntu强制修改密码_debian修改密码命令

    ubuntu强制修改密码_debian修改密码命令年底需要修改一次密码,修改的时候遇到了问题,无法修改密码,经过baidu、google,找到了可能引起的原因,成功修改密码。以下内容来自于网络。Authenticationtokenmanipulationerror发生该错误原因是:1、分区没有空间导致。2、/etc/passwd和/etc/shadow不同步但是这次上面两条却行不通,通过df查看根分区还有40%剩余。1、尝试修改密码,出…

    2022年9月3日
  • kettle 性能优化_kettle过滤记录

    kettle 性能优化_kettle过滤记录性能调优在整个工程中是非常重要的,也是非常有必要的。但有的时候我们往往都不知道如何对性能进行调优。其实性能调优主要分两个方面:一方面是硬件调优,一方面是软件调优。本章主要是介绍Kettle的性能优化及效率提升。……

    2022年9月20日
  • IDEA怎么生成UML类图

    IDEA怎么生成UML类图最近在开发的过程当中,对于已有的代码,想将相关类绘制成UML类图,虽然现在有很多UML类图的优秀软件,比如ProcessOn(可视化编辑)、draw.io(可视化编辑)、PlantUML(代码生成),其实看到这里我就想IDEA中有没有像PlantUML一样的自动生成的插件,本着怀疑的态度百度了一下,果然IDEA还是很强大的,这个插件都是自带的,接下稍微讲述如何利用IDEA生成UML类图的教程。…

    2022年7月12日
  • PowerShell AD 管理

    PowerShell AD 管理

    2022年2月21日
  • leetcode 接雨水2_雨水口连接管

    leetcode 接雨水2_雨水口连接管题目链接给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例 1:输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]输出:6解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。示例 2:输入:height = [4,2,0,3,2,5]输出:9 提示:n == height.length0 <= n &lt

    2022年8月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号