青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
HooLee
If you believe, you can!
C++博客
首頁
新隨筆
新文章
聯系
管理
poj1021_2D-Nim
題意:對比連個圖是否相同。相同的條件是A圖中每個連通的區域都在B圖中有一塊相同的區域與之對應。經過旋轉后對應也可以。
解題思路:
思路一:暴力式。遍歷并存儲A圖中所有聯通的區域,然后在B中逐個尋找與之對應的圖形。
思路二:等價轉化式。比較兩個圖中對應點的“連通度”是否相同。相同輸出YES。空白點的連通度為0,空白點的連通度為它所在行和列與之相連的非空白點的個數。
方式二非常巧妙,將二維問題轉化為了一維問題,大大簡化了問題。
代碼
1
import
java.io.
*
;
2
import
java.util.
*
;
3
class
Main
4
{
5
private
static
int
[][] map1
=
new
int
[
110
][
110
];
6
private
static
int
[][] map2
=
new
int
[
110
][
110
];
7
private
static
CountNode[] ctnd1
=
new
CountNode[
110
*
110
];
8
private
static
CountNode[] ctnd2
=
new
CountNode[
110
*
110
];
9
private
static
int
col;
10
private
static
int
row;
11
public
static
void
main(String[] args)
12
{
13
14
Scanner sc
=
new
Scanner(System.in);
15
int
t
=
sc.nextInt();
16
for
(
int
ii
=
0
; ii
<
t; ii
++
)
17
{
18
for
(
int
j
=
0
; j
<
map1.length; j
++
)
19
{
20
Arrays.fill(map1[j],
0
);
21
Arrays.fill(map2[j],
0
);
22
}
23
Arrays.fill(ctnd1,
new
CountNode(
0
));
24
Arrays.fill(ctnd2,
new
CountNode(
0
));
25
26
col
=
sc.nextInt();
27
row
=
sc.nextInt();
28
int
n
=
sc.nextInt();
29
int
thiscol, thisrow;
30
//
31
//
System.out.println("col=" + col + " row=" + row + " n=" + n);
32
//
33
for
(
int
k
=
0
; k
<
n; k
++
)
//
read map1[][]
34
{
35
thiscol
=
sc.nextInt();
36
thisrow
=
sc.nextInt();
37
38
map1[thisrow][thiscol]
=
1
;
39
}
40
for
(
int
k
=
0
; k
<
n; k
++
)
//
read map2[][]
41
{
42
thiscol
=
sc.nextInt();
43
thisrow
=
sc.nextInt();
44
45
map2[thisrow][thiscol]
=
1
;
46
}
47
//
48
/**/
/*
System.out.println("map1[][]");
49
for(int i = 0; i < row; i++)
50
{
51
for(int j = 0; j < col; j++)
52
System.out.print(map1[i][j]);
53
System.out.println();
54
}
55
System.out.println("map2[][]");
56
for(int i = 0; i < row; i++)
57
{
58
for(int j = 0; j < col; j++)
59
System.out.print(map2[i][j]);
60
System.out.println();
61
}
*/
62
//
63
getAllCounts();
64
Arrays.sort(ctnd1);
65
Arrays.sort(ctnd2);
66
boolean
flag
=
true
;
67
for
(
int
i
=
0
; i
<
ctnd1.length; i
++
)
68
{
69
if
(ctnd1[i].getCount()
!=
ctnd2[i].getCount())
{
70
flag
=
false
;
71
System.out.println(
"
NO
"
);
72
break
;
73
}
74
}
75
if
(flag)
76
System.out.println(
"
YES
"
);
77
}
78
79
}
80
private
static
void
getAllCounts()
81
{
82
int
p
=
0
;
83
for
(
int
i
=
0
; i
<
row; i
++
)
84
{
85
for
(
int
j
=
0
; j
<
col; j
++
)
86
{
87
if
(map1[i][j]
==
1
)
88
ctnd1[p
++
]
=
new
CountNode(getThisMap1Counts(i, j));
89
if
(map2[i][j]
==
1
)
90
ctnd2[p
++
]
=
new
CountNode(getThisMap2Counts(i, j));
91
}
92
}
93
}
94
private
static
int
getThisMap1Counts(
int
r,
int
c)
//
map1[][]的連通度
95
{
96
int
count
=
0
;
97
for
(
int
i
=
r
-
1
; i
>=
0
&&
map1[i][c]
==
1
; i
--
)
98
count
++
;
99
for
(
int
i
=
r
+
1
; i
<
row
&&
map1[i][c]
==
1
; i
++
)
100
count
++
;
101
for
(
int
i
=
c
-
1
; i
>=
0
&&
map1[r][i]
==
1
; i
--
)
102
count
++
;
103
for
(
int
i
=
c
+
1
; i
<
col
&&
map1[r][i]
==
1
; i
++
)
104
count
++
;
105
return
count
+
1
;
106
}
107
private
static
int
getThisMap2Counts(
int
r,
int
c)
//
map2[][]的連通度
108
{
109
int
count
=
0
;
110
for
(
int
i
=
r
-
1
; i
>=
0
&&
map2[i][c]
==
1
; i
--
)
111
count
++
;
112
for
(
int
i
=
r
+
1
; i
<
row
&&
map2[i][c]
==
1
; i
++
)
113
count
++
;
114
for
(
int
i
=
c
-
1
; i
>=
0
&&
map2[r][i]
==
1
; i
--
)
115
count
++
;
116
for
(
int
i
=
c
+
1
; i
<
col
&&
map2[r][i]
==
1
; i
++
)
117
count
++
;
118
return
count
+
1
;
119
}
120
121
122
}
123
class
CountNode
implements
Comparable
<
CountNode
>
124
{
125
private
int
count;
126
public
CountNode(
int
count)
127
{
128
this
.count
=
count;
129
}
130
public
int
getCount()
131
{
132
return
count;
133
}
134
public
int
compareTo(CountNode n2)
135
{
136
return
n2.count
-
this
.count;
137
}
138
}
139
posted on 2013-04-14 20:10
小鼠標
閱讀(520)
評論(0)
編輯
收藏
引用
所屬分類:
Java基礎練習
只有注冊用戶
登錄
后才能發表評論。
相關文章:
編輯距離
閏年判斷
正則表達式簡單筆記
Excel格式地址轉換
一道模擬題——機器人行走距離計算
排列練習2
素數篩法
排列組合練習
排列組合
poj1068Parencodings
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 小鼠標 Powered by:
博客園
模板提供:
滬江博客
<
2013年4月
>
日
一
二
三
四
五
六
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
1
2
3
4
5
6
7
8
9
10
11
常用鏈接
我的隨筆
我的評論
我參與的隨筆
隨筆分類
(111)
C語言(3)
DP(9)
Java筆記(1)
Java基礎練習(25)
安卓(1)
本科畢設(1)
博弈(1)
大數(7)
回溯(2)
排序(10)
暑期培訓周賽(3)
數據結構(7)
數論(1)
水題(8)
圖論(24)
網選訓練(8)
隨筆檔案
(127)
2014年3月 (1)
2013年7月 (10)
2013年5月 (1)
2013年4月 (11)
2013年3月 (8)
2012年10月 (1)
2012年9月 (12)
2012年8月 (38)
2012年7月 (14)
2012年6月 (2)
2012年5月 (8)
2012年4月 (6)
2012年3月 (6)
2012年2月 (4)
2011年8月 (5)
friends
陳鋼
大鵬
黨姐
焦林楓
汪濤
小白學長
媛姐
媛姐csdn
最新評論
1.?re: 線段樹
是這個樣子的,所以在OJ有時候“卡住”了也不要太灰心,沒準真的不是自己的原因呢。
加油,祝你好運啦!
--小鼠標
2.?re: 線段樹
對于編程競賽來說,Java所需時間一般為C/C++的兩倍。合理的競賽給Java的時間限制是給C/C++的兩倍。
--傷心的筆
3.?re: poj1273--網絡流
過來看看你。
--achiberx
4.?re: (轉)ubuntu11.10無法啟動無線網絡的解決方法
膜拜大神。。查了一個下午資料終于在這里解決了問題。。神牛說的區域賽難道是ACM區域賽。。?
--Hang
5.?re: 快速排序、線性時間選擇
博主,謝謝你的文章。你的方法可以很好的處理分區基準在數組中重復的情況,書上的方法遇到這種輸入會堆棧溢出。書上給出了解釋但給的方法貌似不簡潔。
--lsxqw2004
閱讀排行榜
1.?單調隊列(5510)
2.?Linux select()函數使用(4004)
3.?快速排序、線性時間選擇(3757)
4.?poj3468--絕對經典的線段樹題(3663)
5.?優先隊列--堆實現(3323)
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
国产精品一级二级三级
|
欧美日韩亚洲天堂
|
浪潮色综合久久天堂
|
国产精品电影网站
|
欧美在线关看
|
国产精品一区二区久久国产
|
欧美三级欧美一级
|
亚洲一区二区三区免费观看
|
一区二区三区精品久久久
|
一区二区三区 在线观看视频
|
99成人免费视频
|
国产精品国产三级国产aⅴ9色
|
国产美女精品视频
|
另类综合日韩欧美亚洲
|
亚洲国产精品悠悠久久琪琪
|
久久久免费av
|
国产精品久久久久久久app
|
久久九九电影
|
一区二区三区国产在线观看
|
欧美人与禽猛交乱配
|
在线观看免费视频综合
|
欧美国产1区2区
|
老妇喷水一区二区三区
|
91久久精品国产91性色tv
|
国产综合视频
|
欧美激情久久久久
|
久久精品国产在热久久
|
亚洲午夜电影在线观看
|
国产九九视频一区二区三区
|
亚洲美女电影在线
|
亚洲免费视频网站
|
国产午夜一区二区三区
|
久热精品视频在线
|
欧美多人爱爱视频网站
|
亚洲一区欧美激情
|
亚洲黄色天堂
|
欧美1区2区视频
|
欧美日韩在线视频首页
|
欧美激情视频网站
|
久久婷婷麻豆
|
亚洲一区二区在线观看视频
|
久久大综合网
|
久久久久久欧美
|
午夜精品国产
|
欧美激情aⅴ一区二区三区
|
99国产精品99久久久久久粉嫩
|
日韩午夜在线观看视频
|
亚洲在线免费观看
|
欧美激情一区二区三区成人
|
国内外成人免费激情在线视频网站
|
亚洲视频一区在线
|
午夜精品三级视频福利
|
久久一区二区三区四区五区
|
欧美国产精品久久
|
亚洲伦伦在线
|
国产精品嫩草影院一区二区
|
亚洲美女黄网
|
亚洲精品视频在线观看免费
|
国产无遮挡一区二区三区毛片日本
|
国产精品一区亚洲
|
韩国v欧美v日本v亚洲v
|
亚洲精品永久免费
|
国产一级精品aaaaa看
|
亚洲国产欧美在线人成
|
国产精品一区二区你懂的
|
亚洲国产欧美精品
|
一区视频在线看
|
亚洲欧美高清
|
亚洲最新在线
|
亚洲国产高清高潮精品美女
|
亚洲免费高清
|
在线成人h网
|
亚洲女人天堂av
|
亚洲小视频在线观看
|
欧美黑人国产人伦爽爽爽
|
久久只有精品
|
国产日韩一区
|
亚洲永久在线观看
|
亚洲伊人色欲综合网
|
欧美精品乱人伦久久久久久
|
欧美大片免费
|
奶水喷射视频一区
|
久久久久久尹人网香蕉
|
国产女人精品视频
|
亚洲视频高清
|
亚洲一区二区三区在线看
|
亚洲欧美国产日韩天堂区
|
中日韩美女免费视频网址在线观看
|
一区二区三区欧美视频
|
一本大道久久a久久精品综合
|
亚洲欧美国产77777
|
亚洲一区二区在线免费观看视频
|
香蕉成人久久
|
欧美中文字幕在线
|
国产欧美一级
|
久久精彩视频
|
欧美激情在线免费观看
|
日韩网站免费观看
|
欧美日韩一区二区视频在线
|
宅男噜噜噜66一区二区
|
欧美成年人在线观看
|
久久青草久久
|
欧美日韩美女
|
av不卡在线看
|
欧美一区二区视频网站
|
香港成人在线视频
|
国产精品一区二区久久精品
|
欧美 日韩 国产在线
|
美女诱惑黄网站一区
|
欧美日韩国产美
|
国产精品嫩草99av在线
|
精品99一区二区三区
|
99国产精品99久久久久久
|
欧美制服丝袜
|
久久亚洲一区
|
欧美日韩亚洲一区二
|
亚洲欧洲日韩女同
|
亚洲综合日韩在线
|
国产主播一区二区
|
欧美成人午夜免费视在线看片
|
欧美在线视频播放
|
国产日韩一区二区
|
日韩小视频在线观看专区
|
亚洲在线国产日韩欧美
|
狠狠色狠狠色综合人人
|
欧美精品www
|
午夜久久电影网
|
亚洲黄色影院
|
久久乐国产精品
|
日韩亚洲欧美高清
|
国产欧美日韩视频一区二区
|
久久久久久亚洲精品中文字幕
|
欧美一区1区三区3区公司
|
国产综合欧美在线看
|
欧美日本高清视频
|
久久成人免费
|
夜夜嗨av一区二区三区四季av
|
亚洲精品国精品久久99热
|
欧美另类一区
|
香蕉久久夜色精品国产使用方法
|
亚洲影视中文字幕
|
一区二区三区在线免费观看
|
欧美一区二区三区视频
|
欧美激情一区二区三区高清视频
|
在线电影一区
|
久久经典综合
|
在线一区免费观看
|
亚洲国产成人av好男人在线观看
|
亚洲人成在线播放网站岛国
|
国产精品亚洲欧美
|
欧美日本三级
|
蜜臀av一级做a爰片久久
|
久久婷婷蜜乳一本欲蜜臀
|
韩国在线视频一区
|
欧美午夜电影网
|
欧美激情久久久久
|
久久综合一区
|
亚洲精品久久久久久一区二区
|
亚洲精品五月天
|
国产一区二区三区在线免费观看
|
久久精品理论片
|
亚洲五月婷婷
|
这里只有视频精品
|
9l视频自拍蝌蚪9l视频成人
|
久久久久网址
|
在线亚洲欧美视频
|
久久亚洲色图
|
日韩亚洲成人av在线
|
亚洲色图自拍
|
99精品福利视频
|
国产精品久久久久久久久
|
欧美国产日韩精品
|
亚洲性感美女99在线
|
久久精品国产69国产精品亚洲
|
国内外成人免费激情在线视频
|
男女激情视频一区
|
美女久久网站
|
蜜桃久久精品乱码一区二区
|
久久欧美中文字幕
|
99re8这里有精品热视频免费
|
亚洲欧美电影院
|
在线播放国产一区中文字幕剧情欧美
|
久久久久国产一区二区
|
久久成人综合视频
|
久久久久综合一区二区三区
|
久久久久国产精品人
|
免费久久精品视频
|
欧美男人的天堂
|
国产精品蜜臀在线观看
|
美女视频一区免费观看
|
国产精品99久久久久久久vr
|
国产农村妇女精品
|
国产乱码精品一区二区三区忘忧草
|
亚洲午夜精品17c
|
在线一区免费观看
|
午夜精品一区二区三区电影天堂
|
嫩草成人www欧美
|
欧美成人一区二区三区
|
欧美亚洲在线观看
|
欧美专区福利在线
|