青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

獨立博客: 哲學與程序

哲學與程序

ZOJ@3431

ZOJ@3431
題意:有一n層的城堡,每一層有通往下一層的樓梯。對于第i層,通往下層的樓梯在Xi,Yi處;該層有Mi個寶藏,分別給出其坐標和價值;必須在Ti時刻之前(包括)離開,否則樓梯關閉。開始處在第頂層的X,Y處,且每一個單位時刻內可以走一個單位的距離,只能往上下左右四個方向走,通過樓梯不費時間。問能否在規定時間內離開城堡,如果可以的話輸出能獲得的最大寶藏價值。
解法:動態規劃(DP)。
// 2386571      2011-01-15 16:32:37        Accepted      3431      C++      130      416      redsea
#include<iostream>
#include
<algorithm>
#include
<cstdio>
#include
<string.h>
using namespace std;
struct Floor{
    
int m;
    
int x[8], y[8], value[8];
    
int t[257],v[257];
}p[
105];
int st[105];

int f[2][1205];

inline 
int abs(int a)
{
    
return (a>0?a:-a);
}
int main()
{
    
int T;
    
int x, y, n;
    scanf(
"%d",&T);
    
while(T--)
    {
        scanf(
"%d",&n);
        scanf(
"%d%d",&x,&y);
        p[
0].x[0= x;
        p[
0].y[0= y;
        scanf(
"%d%d",&x,&y);
        p[
0].x[1= x;
        p[
0].y[1= y;
        
for(int i = 1; i < n; i++)
        {
            p[i].x[
0= p[i-1].x[1];
            p[i].y[
0= p[i-1].y[1];
            scanf(
"%d%d",&x,&y);
            p[i].x[
1= x;
            p[i].y[
1= y;
        }
        
for(int i = 0; i < n; i++){
            p[i].value[
0= p[i].value[1= 0;
            scanf(
"%d",&p[i].m);
            
for(int j = 0; j < p[i].m; j++){
                scanf(
"%d%d%d",&p[i].x[2+j], &p[i].y[2+j], &p[i].value[2+j]);
            }
        }
        
for(int i = 0; i < n; i++){
            scanf(
"%d"&st[i]);
        }
        
for(int i = 0; i < n; i++)
            
for(int j = 0; j < 256; j++){
                p[i].t[j] 
= -1;
                p[i].v[j] 
= -1;
            }
        
for(int i = 0; i < n; i++)
        {
            
int a[6], b[9];
            
for(int j = 0; j < p[i].m; j++){
                a[j] 
= j+2;
            }
            p[i].t[
3= abs(p[i].x[0]-p[i].x[1]) + abs(p[i].y[0]-p[i].y[1]);
            p[i].v[
3= 0;
            b[
0= 0;
            
do{
                
for(int j = 0; j < p[i].m; j++)
                {
                    b[j
+1= a[j];
                    b[j
+2= 1;
                    
int value = 0;
                    
int t = 0;
                    
int s = 0;
                    s 
= s | (1<<b[0]);
                    
for(int k = 1; k < j+3; k++){
                        s 
= s|(1<<b[k]);
                        t 
+= abs(p[i].x[b[k]] - p[i].x[b[k-1]]) + abs(p[i].y[b[k]]-p[i].y[b[k-1]]);
                        value 
+= p[i].value[b[k]];
                    }
                    
if(p[i].t[s]<0 || p[i].t[s] > t){
                        p[i].t[s] 
= t;
                        p[i].v[s] 
= value;
                    }
                }
            }
while(next_permutation(a,a+p[i].m));
        }
        memset(f,
-1,sizeof(f));
        f[
0][0= 0;
        
int a = 1, b = 0;
        
for(int i = 0; i < n; i++)
        {
            a 
= 1-a;
            b 
= 1-b;
            
for(int j = 0; j < 256; j++){
                
if(p[i].t[j] < 0 || p[i].v[j] < 0)continue;
                
for(int k = st[i]; k >= 0; k--){
                    
                    
if(f[a][k] >= 0 && k+p[i].t[j] <= st[i] && f[b][k+p[i].t[j]] < f[a][k]+p[i].v[j])
                    
                        f[b][k
+p[i].t[j]] = f[a][k]+p[i].v[j];
                }
            }
            
if(i==0)
                f[a][
0= -1;
            
else{
                
for(int j = 0; j <= st[i-1]; j++)
                    f[a][j] 
= -1;
            }
        }
        
int ans = -1;
        
for(int i = 0; i <= st[n-1]; i++)
        {
            
if(f[b][i]>ans)ans = f[b][i];
        }
        
if(ans>=0)printf("%d\n",ans);
        
else printf("I'm doomed, though I fought bravely\n");
    }
    
return 0;
}

posted on 2011-01-15 16:42 哲學與程序 閱讀(243) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm

導航

公告

歡迎訪問 http://zhexue.sinaapp.com

常用鏈接

隨筆分類(37)

隨筆檔案(41)

Algorithm

最新隨筆

搜索

最新評論

獨立博客: 哲學與程序
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲国产精品女人久久久| 欧美在线观看一二区| 国产精品99久久久久久人| 亚洲国产精品黑人久久久| 欧美一区三区二区在线观看| 亚洲激情综合| 久久久久久久综合色一本| 欧美一级视频精品观看| 欧美在线播放高清精品| 欧美自拍偷拍午夜视频| 久久在线视频在线| 欧美成人69av| 亚洲免费av电影| 中文一区二区| 欧美中文字幕在线播放| 久久婷婷激情| 欧美日一区二区在线观看 | 伊大人香蕉综合8在线视| 亚洲风情亚aⅴ在线发布| 亚洲日本免费电影| 亚洲欧美日本视频在线观看| 久久精品中文字幕一区| 欧美激情中文不卡| 中文久久精品| 久久综合中文字幕| 欧美午夜激情小视频| 韩国一区二区三区在线观看| 亚洲另类在线视频| 久久精品男女| 亚洲人体1000| 久久国产婷婷国产香蕉| 欧美日韩国产精品| 一色屋精品视频免费看| 亚洲欧美日韩区| 亚洲国产福利在线| 欧美激情久久久久| 亚洲自拍偷拍麻豆| 欧美国产激情二区三区| 国产一区二区三区四区三区四| 亚洲精品少妇网址| 狂野欧美激情性xxxx欧美| 一区二区欧美日韩| 欧美黑人国产人伦爽爽爽| 国产偷国产偷精品高清尤物| 亚洲精品黄网在线观看| 久久久久88色偷偷免费| 中文成人激情娱乐网| 免费亚洲婷婷| 在线看不卡av| 久久精品视频在线观看| 中日韩高清电影网| 欧美午夜不卡| aa级大片欧美三级| 欧美国产三区| 狂野欧美激情性xxxx欧美| 国产视频自拍一区| 欧美怡红院视频| aa级大片欧美| 国产精品视频最多的网站| 亚洲欧美日韩视频一区| 欧美刺激性大交免费视频| 国精品一区二区三区| 亚洲免费在线电影| 日韩视频―中文字幕| 欧美成年人网站| 亚洲成色www久久网站| 久久久久久久久久久成人| 亚洲一区二区三区视频| 国产精品久久久久av免费| 一区二区三区欧美激情| 日韩一区二区精品视频| 欧美日韩国产大片| 中文日韩欧美| 一本一本久久a久久精品牛牛影视| 欧美高清视频在线播放| 亚洲乱码国产乱码精品精| 欧美激情一区二区在线 | 久久久久久夜| 影音先锋一区| 亚洲国产激情| 欧美色偷偷大香| 亚洲欧美日韩在线播放| 亚洲自拍高清| 在线播放一区| 亚洲国产视频一区| 欧美日韩在线精品| 欧美一区二区黄色| 久久精品亚洲精品| 亚洲日韩欧美一区二区在线| 91久久精品国产| 欧美日韩国语| 久久成人精品无人区| 久久久人人人| 一区二区三区你懂的| 午夜精品剧场| 亚洲欧洲一区二区天堂久久| 99re热这里只有精品免费视频| 国产精品久久久久永久免费观看 | 亚洲精品欧美| 一区二区三区视频免费在线观看| 国产精品亚洲精品| 欧美jizz19性欧美| 欧美日韩在线一二三| 欧美一区二区黄色| 欧美国产一区二区在线观看| 午夜一区二区三区在线观看| 久热精品视频在线观看一区| 日韩天天综合| 久久国产直播| 亚洲图片在线观看| 老司机凹凸av亚洲导航| 亚洲先锋成人| 老司机一区二区| 欧美一区二区成人6969| 免费观看成人www动漫视频| 午夜精品久久久久久久99樱桃| 国内精品美女av在线播放| 美女视频黄免费的久久| 欧美三级视频| 欧美大色视频| 国产精品午夜在线| 亚洲美女在线观看| 亚洲电影在线播放| 欧美一区在线直播| 亚洲一区在线直播| 免费成人黄色av| 久久米奇亚洲| 国产精品午夜在线| 亚洲图片自拍偷拍| 一本色道**综合亚洲精品蜜桃冫| 久久精品亚洲一区二区| 欧美一区2区视频在线观看| 欧美日韩免费网站| 亚洲日本在线观看| 亚洲激情综合| 男女激情视频一区| 欧美成人激情在线| 一区视频在线看| 久久激情综合| 久久尤物视频| 国产亚洲一区精品| 欧美在线看片| 久久伊人一区二区| 一区二区在线免费观看| 久久av资源网站| 久久亚洲色图| 影音先锋日韩有码| 免费亚洲一区| 亚洲国产精品女人久久久| 亚洲激情电影中文字幕| 嫩草伊人久久精品少妇av杨幂| 欧美大胆a视频| 91久久精品国产91久久性色| 蜜桃久久精品乱码一区二区| 亚洲大黄网站| 99成人精品| 欧美午夜片在线免费观看| 亚洲无吗在线| 久久久999成人| 精品二区视频| 欧美不卡在线视频| 99国产欧美久久久精品| 羞羞视频在线观看欧美| 国内精品国语自产拍在线观看| 久久综合色婷婷| 日韩视频一区二区| 欧美制服丝袜第一页| 黑人极品videos精品欧美裸| 久久综合狠狠综合久久综合88| 亚洲第一中文字幕在线观看| 一本色道久久综合亚洲91| 国产精品xnxxcom| 欧美一区二区视频网站| 欧美电影免费观看高清| 中文高清一区| 韩国女主播一区| 欧美片网站免费| 欧美一二区视频| 亚洲第一黄网| 欧美亚洲日本网站| 亚洲级视频在线观看免费1级| 欧美午夜精品电影| 久久久999精品| 这里只有精品视频| 你懂的国产精品| 亚洲欧美国产三级| 欧美精品99| 久久免费视频网| 日韩亚洲精品视频| 国产深夜精品| 欧美日本韩国一区二区三区| 午夜精品在线| 亚洲日本欧美天堂| 欧美成人影音| 久久久xxx| 国产精品对白刺激久久久| 狂野欧美性猛交xxxx巴西| 亚洲免费影视第一页| 亚洲人成网站777色婷婷| 美国十次成人|