关注
消消乐
import java.util.Scanner;
publicclass
Main
{
int[][]
map =newint[
10
][
10
];
publicstaticvoid
main
(
String
[]
args
)
{
Main main =
new
Main
()
;
main.
init
()
;
}
void
init
()
{
buildMap()
;
// print();
Scanner
scanner
=
new
Scanner
(
System
.in)
;
while
(scanner.
hasNext
())
{
touch(
scanner
.nextInt())
;
}
}
privatevoid
touch
(int
tar
)
{
int i, j;
if
(
tar
==
100
)
{
i =
9
;
j =
9
;
}
elseif
(
tar
==
1
)
{
i =
0
;
j =
0
;
}
else
{
j =
(
tar
-
1
)
%
10
;
i =
(
tar
-
1
)
/
10
;
}
if
(map[i][j]
!=
-
1
)
{
touch
(i, j)
;
}
zhegnli()
;
// printMap();
print()
;
}
privatevoid
printMap
()
{
for
(
int i =
0
; i <
10
; i++
)
{
StringBuffer sb
=
new
StringBuffer
()
;
for
(
int j =
0
; j <
10
; j++
)
{
sb.
append
(map[i][j]
+
" "
)
;
}
System
.
out
.println(
sb
.toString())
;
}
System
.
out
.println()
;
}
privatevoid
print
()
{
int red =
0
, green =
0
, blue =
0
, yellow =
0
, puple =
0
;
for
(
int i =
0
; i <
10
; i++
)
{
for
(
int j =
0
; j <
10
; j++
)
{
int now = map[i][j]
;
if
(now ==
0
)
red++;
else
if
(now ==
1
)
green++;
else
if
(now ==
2
)
blue++;
else
if
(now ==
3
)
yellow++;
else
if
(now ==
4
)
puple++;
}
}
System
.out.
println
(red +
" "
+ green +
" "
+ blue +
" "
+ yellow +
" "
+ puple)
;
}
privatevoid
zhegnli
()
{
for
(
int i =
0
; i <
10
;
)
{
if
(shuIsNull(
i
))
{
moveLeft(
i
)
;
}
else
{
i++;
}
}
for
(
int j =
0
; j <
10
; j++
)
{
int pos =
9
;
for
(
int i =
9
; i >=
0
; i--
)
{
if
(map[i][j]
!=
-
1
)
{
map[pos--
][j]
= map[i][j]
;
}
else
{
// System.out.println("change " + i + ","
+ pos);
}
}
for
(
int i = pos; i >=
0
; i--
)
{
map[i][j]
=
-
1
;
}
}
}
privatevoid
moveLeft
(int
pos
)
{
for
(
int i =
pos
+
1
; i <
10
; i++
)
{
for
(
int j =
0
; j <
10
; j++
)
{
map[j][i -
1
]
= map[j][i]
;
map[j][i]
=
-
1
;
}
}
}
privateboolean
shuIsNull
(int
pos
)
{
for
(
int i =
0
; i <
10
; i++
)
{
if
(map[i][
pos
]
!=
-
1
)
returnfalse;
}
returntrue;
}
privatevoid
touch
(int
i,int
j
)
{
// System.out.println("touch "+i+","+j);
deal
(
i
,
j
, map[
i
][
j
])
;
}
privatevoid
deal
(int
i,int
j,int
tar
)
{
if
(
in
(
i
,
j
)
&& map[
i
][
j
]
==
tar
)
{
map[
i
][
j
]
=
-
1
;
deal
(
i
+
1
,
j
,
tar
)
;
deal
(
i
-
1
,
j
,
tar
)
;
deal
(
i
,
j
+
1
,
tar
)
;
deal
(
i
,
j
-
1
,
tar
)
;
}
}
privateboolean
in
(int
i,int
j
)
{
if
(
i
>=
0
&&
i
<
10
&&
j
>=
0
&&
j
<
10
)
returntrue;
else
returnfalse;
}
privatevoid
buildMap
()
{
String
[]
strs
=
{
"RED,RED,BLUE,BLUE,GREEN,YELLOW,BLUE,YELLOW,RED,PURPLE",
"GREEN,GREEN,GREEN,BLUE,RED,PURPLE,RED,YELLOW,YELLOW,BLUE",
"BLUE,RED,RED,YELLOW,YELLOW,PURPLE,BLUE,GREEN,GREEN,BLUE",
"YELLOW,RED,BLUE,YELLOW,BLUE,RED,PURPLE,GREEN,GREEN,RED",
"YELLOW,RED,BLUE,BLUE,PURPLE,GREEN,PURPLE,RED,YELLOW,BLUE",
"PURPLE,YELLOW,RED,RED,YELLOW,RED,PURPLE,YELLOW,RED,RED",
"YELLOW,YELLOW,GREEN,PURPLE,GREEN,RED,BLUE,YELLOW,BLUE,GREEN",
"RED,YELLOW,BLUE,BLUE,YELLOW,GREEN,PURPLE,RED,BLUE,GREEN",
"GREEN,GREEN,YELLOW,YELLOW,RED,RED,PURPLE,BLUE,BLUE,GREEN",
"PURPLE,BLUE,RED,RED,PURPLE,YELLOW,BLUE,RED,RED,GREEN"
}
;
for
(
int i =
0
; i <
10
; i++
)
{
String
[] curs = strs[i]
.
split
(
","
)
;
for
(
int j =
0
; j <
10
; j++
)
{
String str = curs[j]
;
int tar =
-
1
;
if
(str.
equals
(
"RED"
))
tar =
0
;
else
if
(str.
equals
(
"GREEN"
))
tar =
1
;
else
if
(str.
equals
(
"BLUE"
))
tar =
2
;
else
if
(str.
equals
(
"YELLOW"
))
tar =
3
;
else
if
(str.
equals
(
"PURPLE"
))
tar =
4
;
map[i][j]
= tar;
}
}
}
}
查看原帖
点赞 6
相关推荐

点赞 评论 收藏
分享

点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你觉得实习能学到东西吗 #
24086次浏览 544人参与
# 不考虑转正,实习多久合适 #
30439次浏览 138人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
23683次浏览 198人参与
# 秋招什么时候开投比较合适? #
12924次浏览 226人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
28448次浏览 459人参与
# 如何准备秋招 #
14786次浏览 280人参与
# 发工资后,你做的第一件事是什么 #
66779次浏览 222人参与
# 实习,不懂就问 #
35338次浏览 580人参与
# 软开人,秋招你打算投哪些公司呢 #
101612次浏览 957人参与
# 大疆今年的机械笔试难吗? #
41804次浏览 456人参与
# 工作中哪个瞬间让你想离职 #
24918次浏览 173人参与
# 元戎启行求职进展汇总 #
32112次浏览 238人参与
# 每个月的工资都是怎么分配的? #
19345次浏览 373人参与
# 运营人求职交流聚集地 #
141525次浏览 989人参与
# 你觉得现在还能进互联网吗? #
5810次浏览 118人参与
# 预测一下26届秋招形势 #
30953次浏览 277人参与
# 你们公司几号发工资 #
19424次浏览 130人参与
# 校招入职后的感受 #
291481次浏览 2736人参与
# 硬件应届生薪资是否普遍偏低? #
72920次浏览 511人参与
# 晒一晒你收到的礼盒 #
70487次浏览 403人参与
# 25届如何提前做秋招准备? #
171979次浏览 2482人参与