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();
}
}
查看全文
相关阅读:
洛谷P5173 传球(暴力)
uoj#402. 【CTSC2018】混合果汁(主席树+二分)
uoj#401. 【CTSC2018】青蕈领主(分治FFT)
uoj#400. 【CTSC2018】暴力写挂(边分治)
uoj#399. 【CTSC2018】假面(概率期望)
P4769 [NOI2018]冒泡排序(dp)
洛谷P3688/uoj#291. [ZJOI2017]树状数组
uoj#290. 【ZJOI2017】仙人掌(数数+仙人掌+树形dp)
Git环境部署
mysql修改密码
原文地址:https://www.cnblogs.com/bluespot/p/911755.html
最新文章
[NOI2011]道路修建
[BZOJ4568][SCOI2016]幸运数字
[BZOJ2115][WC2011]最大XOR和路径
[BZOJ2460][BeiJing2011]元素
线性基总结
[BZOJ1495][NOI2006]网络收费
[BZOJ2244][SDOI2011]拦截导弹
[BZOJ2653]middle
[BZOJ2120]数颜色
[CJOJ2425][SYZOI Round1]滑稽的树
热门文章
[HDU5324]Boring Class
19. slot插槽传递模板
18. VUE created 方法作用
17. Vue2.4+新增属性$listeners
16. Vue2.4+新增属性$attrs
1. HTML <fieldset> 标签
15. Vue2.4+新增属性.sync
14. VUE 子组件修改父组件的值
uoj#339. 【清华集训2017】小 Y 和二叉树(构造)
uoj#340. 【清华集训2017】小 Y 和恐怖的奴隶主(矩阵加速)
Copyright © 2011-2022 走看看