pzz
C++博客
|
首頁(yè)
|
發(fā)新隨筆
|
發(fā)新文章
|
聯(lián)系
|
聚合
|
管理
隨筆:8 文章:35 評(píng)論:3 引用:0
龐果會(huì)-回文字符串
1.一開(kāi)始想法是對(duì)的,就是(總長(zhǎng)度/2)!/(每個(gè)字母i出現(xiàn)的次數(shù)/2)! ,一開(kāi)始用c++寫(xiě)的代碼,錯(cuò)誤是因?yàn)閿?shù)據(jù)溢出,而java的BigInteger對(duì)于處理大數(shù)據(jù)的加減乘除是最適合不過(guò)的啦
下面是寫(xiě)得兩個(gè)代碼:
c++代碼
1
int
_init(
string
s,
int
countnum[])
2
{
3
int
len=s.length();
4
for
(
int
i=0;i<len;i++)
5
countnum[s[i]-'a']++;
6
return
len;
7
}
8
int
palindrome(
const
string
&s)
9
{
10
int
countnum[26],visit[26];
11
int
alphanum;
12
memset(countnum,0,
sizeof
(countnum));
13
memset(visit,0,
sizeof
(visit));
14
alphanum=_init(s,countnum);
15
int
is_palindrome=0;
16
for
(
int
i=0;i<26;i++)
17
{
18
if
(countnum[i]%2==1) {
19
is_palindrome++;
20
visit[i]=1;
21
}
22
}
23
if
(is_palindrome>1)
return
0;
24
else
25
{
26
long
long
sum=1;
27
//
則除去中間的一個(gè)字母還有兩邊的字母,(alphanum-1)/2
28
if
(is_palindrome==1){
29
for
(
int
i=1;i<=(alphanum-1)/2;i++)
30
sum=((sum*i)%MAX_VALUE);
31
for
(
int
i=0;i<26;i++)
32
{
33
if
(countnum[i]>0)
34
{
35
if
(visit[i]!=1){
36
for
(
int
j=2;j<=(countnum[i]/2);j++)
37
{
38
sum=(sum/j)%MAX_VALUE;
39
}
40
}
41
else
42
{
43
for
(
int
j=2;j<=(countnum[i]-1)/2;j++)
44
{
45
sum=(sum/j)%MAX_VALUE;
46
}
47
}
48
}
49
}
50
}
51
else
52
{
53
for
(
int
i=1;i<=(alphanum)/2;i++)
54
sum=((sum*i)%MAX_VALUE);
55
for
(
int
i=0;i<26;i++)
56
{
57
if
(countnum[i]>0)
58
{
59
if
(visit[i]!=1){
60
for
(
int
j=2;j<=(countnum[i]/2);j++)
61
{
62
sum=(sum/j)%MAX_VALUE;
63
}
64
}
65
else
66
{
67
for
(
int
j=2;j<=(countnum[i]-1)/2;j++)
68
{
69
sum=(sum/j)%MAX_VALUE;
70
}
71
}
72
}
73
}
74
}
75
return
sum%MAX_VALUE;
76
}
77
}
78
Java代碼
參考文章:
http://blog.csdn.net/u011459840/article/details/9667077
1
public
static
int
palindrome(String s) {
2
int
[]countnum=
new
int
[26];
3
int
len=s.length();
4
int
is_can=0;
5
if
(s==
null
||s.length()>100||s.length()<1)
return
0;
6
for
(
int
i=0;i<len;i++)
7
{
8
countnum[s.charAt(i)-'a']++;
9
}
10
for
(
int
i=0;i<26;i++){
11
if
(countnum[i]%2==1){
12
is_can++;
13
}
14
}
15
if
(is_can>1)
return
0;
16
else
17
{
18
//
求階乘(len/2)!
19
BigInteger result=BigInteger.ONE;
20
for
(
int
i=1;i<=(len/2);i++){
21
result=result.multiply(BigInteger.valueOf(i));
22
}
23
BigInteger dividevalue=BigInteger.ONE;
24
for
(
int
i=0;i<26;i++)
25
{
26
if
(countnum[i]>0){
27
for
(
int
j=1;j<=(countnum[i]/2);j++){
28
dividevalue=dividevalue.multiply(BigInteger.valueOf(j));
29
}
30
}
31
}
32
result=result.divide(dividevalue);
33
return
result.mod(BigInteger.valueOf(1000000007)).intValue();
34
}
35
發(fā)表于 2013-08-01 21:43
pzz
閱讀(136)
評(píng)論(0)
編輯
收藏
引用
所屬分類(lèi):
龐果會(huì)英雄挑戰(zhàn)賽
只有注冊(cè)用戶(hù)
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開(kāi)源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問(wèn)
Chat2DB
管理
<
2025年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
給我留言
查看公開(kāi)留言
查看私人留言
隨筆分類(lèi)
一些記錄(4)
(rss)
一些算法思路(2)
(rss)
隨筆檔案
2013年2月 (1)
2012年5月 (7)
文章分類(lèi)
ACM 搜索(1)
(rss)
ahstu_oj(2)
(rss)
c/c++(8)
(rss)
c++基本常識(shí)(1)
(rss)
linux嵌入式(5)
(rss)
linux系統(tǒng)下遇到的奇怪問(wèn)題(1)
(rss)
oj題目思路(2)
(rss)
操作系統(tǒng)(1)
(rss)
成長(zhǎng)記錄
(rss)
讀書(shū)(1)
(rss)
九度oj(1)
(rss)
龐果會(huì)英雄挑戰(zhàn)賽(1)
(rss)
深入理解計(jì)算機(jī)系統(tǒng)札記
(rss)
樹(shù)狀數(shù)組(1)
(rss)
思維火花
(rss)
算法學(xué)習(xí)(1)
(rss)
網(wǎng)絡(luò)流
(rss)
線(xiàn)段樹(shù)
(rss)
雜感
(rss)
狀態(tài)dp
(rss)
字符串匹配(2)
(rss)
文章檔案
2014年5月 (3)
2014年4月 (1)
2014年3月 (1)
2014年2月 (1)
2013年11月 (1)
2013年10月 (3)
2013年9月 (2)
2013年8月 (6)
2013年7月 (4)
2013年6月 (2)
2012年5月 (3)
2012年4月 (4)
2012年3月 (4)
友情鏈接
csdn
豆瓣
杭電酷行天下
老趙
劉若鵬
南陽(yáng)c小加
搜索
最新評(píng)論
1.?re: 樹(shù)狀數(shù)組和線(xiàn)段樹(shù)簡(jiǎn)單題
。。。
--pzz
2.?re: 2013我有夢(mèng)
恩,是的
--pzz
3.?re: 2013我有夢(mèng)[未登錄](méi)
支持一吧!實(shí)踐夢(mèng)想需要極大的努力
--true
閱讀排行榜
1.?2013我有夢(mèng)(402)
2.?熟練才是王道 (274)
3.?nyoj195_飛翔(273)
4.?hfut1245_水晶球(273)
5.?群賽(240)
評(píng)論排行榜
1.?2013我有夢(mèng)(2)
2.?熟練才是王道 (0)
3.?nyoj195_飛翔(0)
4.?教訓(xùn)(0)
5.?群賽(0)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 pzz
无码人妻久久一区二区三区免费丨
|
久久伊人中文无码
|
久久精品国产亚洲av麻豆色欲
|
久久婷婷五月综合97色直播
|
久久久久人妻精品一区二区三区
|
色综合合久久天天给综看
|
亚洲人成电影网站久久
|
精品久久人人爽天天玩人人妻
|
色88久久久久高潮综合影院
|
一本色道久久88综合日韩精品
|
国产午夜精品久久久久九九电影
|
中文字幕久久波多野结衣av
|
久久国产精品免费一区
|
久久WWW免费人成—看片
|
成人免费网站久久久
|
久久96国产精品久久久
|
国产成人精品久久免费动漫
|
久久久婷婷五月亚洲97号色
|
国内精品久久人妻互换
|
久久精品草草草
|
欧洲国产伦久久久久久久
|
亚洲国产精品无码久久久不卡
|
亚洲一级Av无码毛片久久精品
|
中文字幕无码av激情不卡久久
|
中文字幕乱码人妻无码久久
|
精品国产VA久久久久久久冰
|
久久99精品久久久久久野外
|
久久人人爽人人爽人人片av高请
|
久久午夜福利无码1000合集
|
欧美精品久久久久久久自慰
|
国产亚州精品女人久久久久久
|
久久人人爽人人人人爽AV
|
成人精品一区二区久久
|
国产99久久久国产精品小说
|
大蕉久久伊人中文字幕
|
99久久精品日本一区二区免费
|
青草久久久国产线免观
|
精品国产热久久久福利
|
大美女久久久久久j久久
|
97精品国产97久久久久久免费
|
国产精品青草久久久久婷婷
|