zoukankan
html css js c++ java
派发牌算法的实现 (java)
import
java.util.
*
;
/** */
/**
* 派发牌算法的实现
* 要求:把2副牌,也就是108张,发给4个人,留8张底牌
*/
public
class
PaiPai
{
int
[] pokerpai
=
new
int
[
54
];
int
[] allpai
=
new
int
[
108
];
int
[][] playerpai
=
new
int
[
4
][
25
];
int
[] dipai
=
new
int
[
8
];
int
m_turn;
Random rdm
=
new
Random(System.currentTimeMillis());
int
getRandom(
int
size)
{
return
(rdm.nextInt()
&
0x7FFFFFFF
)
%
size;
}
public
PaiPai()
{
initPai();
faPai();
}
public
void
initPai()
{
m_turn
=
0
;
int
randomsite;
int
temppai;
//
赋初值--发牌一般形式:1.按点数发 2.牌数和花色发
//
下面是按点数发
for
(
int
i
=
0
;i
<
pokerpai.length;i
++
)
{
pokerpai[i]
=
(i
+
1
)
%
55
;
}
//
给两副牌
for
(
int
i
=
0
;i
<
2
;i
++
)
for
(
int
j
=
0
;j
<
pokerpai.length;j
++
)
{
allpai[m_turn]
=
pokerpai[j];
m_turn
++
;
}
//
洗牌
for
(
int
i
=
0
;i
<
allpai.length;i
++
)
{
randomsite
=
getRandom(allpai.length);
temppai
=
allpai[randomsite];
allpai[randomsite]
=
allpai[i];
allpai[i]
=
temppai;
}
}
public
void
faPai()
{
//
一轮发四人牌,共25轮
for
(
int
i
=
0
;i
<
25
;i
++
)
for
(
int
j
=
0
;j
<
playerpai.length;j
++
)
{
m_turn
--
;
playerpai[j][i]
=
allpai[m_turn];
}
//
留底牌
for
(
int
i
=
0
;i
<
dipai.length;i
++
)
{
m_turn
--
;
dipai[i]
=
allpai[m_turn];
}
//
显示四家牌
for
(
int
j
=
0
;j
<
playerpai.length;j
++
)
showPai(playerpai[j]);
//
显示底牌
showPai(dipai);
}
public
void
showPai(
int
[] m_pai)
{
System.out.println(
"
Showpai:start.
"
);
for
(
int
i
=
0
;i
<
m_pai.length;i
++
)
{
System.out.print(
"
"
+
m_pai[i]);
}
System.out.println();
System.out.println(
"
Showpai:end.
"
);
}
public
static
void
main(String[] args)
{
new
PaiPai();
}
}
查看全文
相关阅读:
PAT Basic Level 1013
PAT Basic Level 1012
PAT Basic Level 1011
PAT Basic Level 1009
PAT Basic Level 1010
PAT Basic Level 1008 *
PAT Basic Level 1007 *
.NET Entity Framework入门简介及简单操作
SQL Server 查询处理中的各个阶段(SQL执行顺序)
泛型优点和特性
原文地址:https://www.cnblogs.com/bluespot/p/911755.html
最新文章
P1162 填涂颜色
P1101 单词方阵
P1605迷宫
(洛谷)P1019 单词接龙
Fibonacci again and again HDU
P1309 瑞士轮
CSU 1997-Seating Arrangement
CSU-2007 Football Training Camp
P2756 飞行员配对方案问题
网络流 EK算法模板。
热门文章
Poj3061Subsequence
Number Sequence
百度之星初赛A 今夕何夕
士兵杀敌(三)
最长递增子序列(模板)
poj 2533Longest Ordered Subsequence
POJ1789-Truck History
PAT Basic Level 1016
PAT Basic Level 1015
PAT Basic Level 1014
Copyright © 2011-2022 走看看