HooLee
If you believe, you can!
C++博客
首頁
新隨筆
新文章
聯(lián)系
管理
poj1088滑雪
題意:找出矩陣中的最長下降序列的長度。
解題思路:
1.回溯,時間復(fù)雜度,指數(shù)級別。這是一種很容易想到的做法,不過會超時。
2.動態(tài)規(guī)劃,時間復(fù)雜度O(N^2)。相信我們都學(xué)過一維的
最長上升子序列
問題,這一題是一維的變形,我們只需稍加轉(zhuǎn)換就可以轉(zhuǎn)換為一維的。
先來回想一下一維的最長上升子序列的做法:對一個給定的節(jié)點(diǎn)p,我們只需枚舉p前面的所有節(jié)點(diǎn)的最長上升子序列的長度,用p前面的節(jié)點(diǎn)的長度去試圖更新p的長度即可。
我們?nèi)绾螌⒈绢}轉(zhuǎn)化為一維的問題呢?我們只需將矩陣中的所有點(diǎn)按照他的high排序,然后按照一維的處理即可。只不過p前面的節(jié)點(diǎn)在更新p時還要考慮他們在矩陣中的相對位置,因?yàn)橹挥懈鷓相鄰的四個點(diǎn)才有可能去更新p點(diǎn)的長度。
代碼
1
import
java.io.
*
;
2
import
java.util.
*
;
3
class
Main
4
{
5
private
static
int
R, C;
6
private
static
MyNode[] nds
=
new
MyNode[
110
*
110
];
7
public
static
void
main(String[] args)
8
{
9
10
Scanner sc
=
new
Scanner(System.in);
11
R
=
sc.nextInt();
12
C
=
sc.nextInt();
13
int
count
=
0
;
14
for
(
int
i
=
0
; i
<
R; i
++
)
15
{
16
for
(
int
j
=
0
; j
<
C; j
++
)
17
{
18
int
h
=
sc.nextInt();
19
nds[count
++
]
=
new
MyNode(i, j, h);
20
}
21
}
22
Arrays.sort(nds,
0
, count);
23
//
/
24
//
for(int i = 0; i < count; i++)
25
//
System.out.println("::" + nds[i].getH());
26
//
27
int
lens[][]
=
new
int
[R][C];
28
for
(
int
i
=
0
; i
<
R; i
++
)
29
Arrays.fill(lens[i],
1
);
30
for
(
int
i
=
1
; i
<
count; i
++
)
31
{
32
for
(
int
j
=
0
; j
<
i; j
++
)
33
{
34
int
r2
=
nds[i].getR();
35
int
c2
=
nds[i].getC();
36
int
h2
=
nds[i].getH();
37
38
int
r1
=
nds[j].getR();
39
int
c1
=
nds[j].getC();
40
int
h1
=
nds[j].getH();
41
if
(Math.abs(r2
-
r1)
+
Math.abs(c1
-
c2)
==
1
&&
h2
>
h1
42
&&
lens[r2][c2]
<=
lens[r1][c1])
43
{
44
lens[r2][c2]
=
lens[r1][c1]
+
1
;
45
}
46
}
47
}
48
int
max
=
0
;
49
for
(
int
i
=
0
; i
<
R; i
++
)
50
{
51
for
(
int
j
=
0
; j
<
C; j
++
)
52
if
(lens[i][j]
>
max)
53
max
=
lens[i][j];
54
}
55
System.out.println(max);
56
}
57
58
}
59
class
MyNode
implements
Comparable
<
MyNode
>
60
{
61
private
int
r;
62
private
int
c;
63
private
int
h;
64
public
MyNode(
int
r,
int
c,
int
h)
65
{
66
this
.r
=
r;
67
this
.c
=
c;
68
this
.h
=
h;
69
}
70
public
int
getR()
71
{
72
return
r;
73
}
74
public
int
getC()
75
{
76
return
c;
77
}
78
public
int
getH()
79
{
80
return
h;
81
}
82
public
int
compareTo(MyNode n2)
83
{
84
return
h
-
n2.h;
85
}
86
}
posted on 2013-04-16 18:36
小鼠標(biāo)
閱讀(410)
評論(0)
編輯
收藏
引用
所屬分類:
Java基礎(chǔ)練習(xí)
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
編輯距離
閏年判斷
正則表達(dá)式簡單筆記
Excel格式地址轉(zhuǎn)換
一道模擬題——機(jī)器人行走距離計(jì)算
排列練習(xí)2
素?cái)?shù)篩法
排列組合練習(xí)
排列組合
poj1068Parencodings
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 小鼠標(biāo) Powered by:
博客園
模板提供:
滬江博客
<
2012年8月
>
日
一
二
三
四
五
六
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
7
8
常用鏈接
我的隨筆
我的評論
我參與的隨筆
隨筆分類
(111)
C語言(3)
DP(9)
Java筆記(1)
Java基礎(chǔ)練習(xí)(25)
安卓(1)
本科畢設(shè)(1)
博弈(1)
大數(shù)(7)
回溯(2)
排序(10)
暑期培訓(xùn)周賽(3)
數(shù)據(jù)結(jié)構(gòu)(7)
數(shù)論(1)
水題(8)
圖論(24)
網(wǎng)選訓(xùn)練(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
陳鋼
大鵬
黨姐
焦林楓
汪濤
小白學(xué)長
媛姐
媛姐csdn
最新評論
1.?re: 線段樹
是這個樣子的,所以在OJ有時候“卡住”了也不要太灰心,沒準(zhǔn)真的不是自己的原因呢。
加油,祝你好運(yùn)啦!
--小鼠標(biāo)
2.?re: 線段樹
對于編程競賽來說,Java所需時間一般為C/C++的兩倍。合理的競賽給Java的時間限制是給C/C++的兩倍。
--傷心的筆
3.?re: poj1273--網(wǎng)絡(luò)流
過來看看你。
--achiberx
4.?re: (轉(zhuǎn))ubuntu11.10無法啟動無線網(wǎng)絡(luò)的解決方法
膜拜大神。。查了一個下午資料終于在這里解決了問題。。神牛說的區(qū)域賽難道是ACM區(qū)域賽。。?
--Hang
5.?re: 快速排序、線性時間選擇
博主,謝謝你的文章。你的方法可以很好的處理分區(qū)基準(zhǔn)在數(shù)組中重復(fù)的情況,書上的方法遇到這種輸入會堆棧溢出。書上給出了解釋但給的方法貌似不簡潔。
--lsxqw2004
閱讀排行榜
1.?單調(diào)隊(duì)列(5505)
2.?Linux select()函數(shù)使用(4000)
3.?快速排序、線性時間選擇(3738)
4.?poj3468--絕對經(jīng)典的線段樹題(3655)
5.?優(yōu)先隊(duì)列--堆實(shí)現(xiàn)(3317)
国内精品久久久久影院亚洲
|
国产精品99久久久久久猫咪
|
亚洲国产精品婷婷久久
|
久久精品国产亚洲Aⅴ香蕉
|
欧美粉嫩小泬久久久久久久
|
亚洲AV无一区二区三区久久
|
亚洲伊人久久综合影院
|
99精品国产在热久久无毒不卡
|
久久久99精品一区二区
|
精品久久8x国产免费观看
|
免费一级欧美大片久久网
|
亚洲国产精品久久久久
|
久久婷婷激情综合色综合俺也去
|
久久久久久噜噜精品免费直播
|
久久婷婷激情综合色综合俺也去
|
久久涩综合
|
久久久久99精品成人片
|
欧美日韩久久中文字幕
|
99久久国产综合精品五月天喷水
|
国产午夜精品久久久久九九电影
|
97精品依人久久久大香线蕉97
|
国产亚洲综合久久系列
|
婷婷久久久亚洲欧洲日产国码AV
|
香港aa三级久久三级老师2021国产三级精品三级在
|
久久久精品国产亚洲成人满18免费网站
|
久久精品亚洲日本波多野结衣
|
日韩乱码人妻无码中文字幕久久
|
麻豆久久久9性大片
|
亚洲精品美女久久久久99小说
|
天天爽天天爽天天片a久久网
|
2021少妇久久久久久久久久
|
国产人久久人人人人爽
|
精品国产乱码久久久久久1区2区
|
国产99久久久国产精品小说
|
久久亚洲精品国产精品婷婷
|
国内精品久久久久影院亚洲
|
亚洲日本va午夜中文字幕久久
|
欧美精品福利视频一区二区三区久久久精品
|
国产精品久久自在自线观看
|
久久国产亚洲精品麻豆
|
久久93精品国产91久久综合
|