重溫世界盃
description
世界盃結束了,義大利人連本帶利的收回了法國人6年前欠他們的債,捧起了大力神盃,成就了4星義大利.
世界盃雖然結束了,但是這界世界盃給我們還是留下許多值得回憶的東西.比如我們聽到了黃名嘴的3分鐘激情解說,我們懂得了原來可以向同乙個人出示3張黃牌,我們還看到了齊達內的頭不僅能頂球還能頂人…………
介於有這麼多的精彩,xhd決定重溫德國世界盃,當然只是去各個承辦世界盃比賽的城市走走看看.但是這需要一大比錢,幸運的是xhd對世界盃的熱愛之情打動了德國世界盃組委會,他們將提供xhd在中國杭州和德國任意世界盃承辦城市的往返機票,並說服了這些城市在xhd到達這座城市時為他提供一筆生活費以便他在那裡參觀時用,當參觀完時剩餘的錢也將留給xhd,但當生活費不夠時他們將強行結束xhd的這次德國之行,除了這個,他們還有乙個條件,xhd只能根據他們所給的路線參觀.比如有3座城市a,b,c,他們給定了a-b-c-a的路線,那麼xhd只有3種參觀順序abc,bca,cab.由於各個城市所提供的生活費和在那裡的花費都不同,這使xhd很頭痛,還好我們事先知道了這筆生活費和花費.請問xhd最多能順利參觀幾座城市?
input
每組輸入資料分兩行,第一行是乙個正整數n(1<=n<=100000),表示有n座城市.接下來的一行按照給定的路線順序的輸出這n個城市的生活費和花費,w1,l1,w2,l2,……,wn,ln,其中wi,li分別表示第i個城市的生活費和花費,並且它們都是正整數.
output
對應每組資料輸出最多能參觀的城市數.
sample input
33 2 3 4 2 2
33 2 3 4 2 3
sample output
32
收穫:本應該用dp寫的,但是我看不懂dp的方式,只好用土方法寫,從第乙個城市開始走,走到錢變成負時,判斷max和sum的大小,後將sum至零,然後從下乙個城市開始繼續走,當從最後乙個城市進入第乙個城市後,再碰到負的話就不用繼續走了,肯定沒有之前的多了。其實就是最長序列,下次找個機會看看dp的演算法。
include#include using namespace std;
int get[100001];
int cost[100001];
int vis[100001];
int main()
s=e=m=sum=max=0;
while(1)
else
s=(e+1);
e=s;
max=sum>max?sum:max;
sum=m=0;}}
else
sum=sum+1;
e=(e+1)%n;
m=a;
}} printf("%d\n",max);
}}
鑑於自己正做的賽題是求有條件的最短路,故特地找到這題
這題的限制是要在一定的花費內走最短路
華為挑戰賽的條限制是要走過特定的點
應該差不多
準備嘗試多種方法
1.小優的dfs加剪枝
剪枝技巧:
建立鄰接表而不是鄰接矩陣,因為邊太多,而且有重邊,矩陣是不可以的
當前城市為n時,判斷最小值
若下乙個城市已走過,則不走
若當前花費大於限制k,不往下走
若當前路程小於已知的最小值,不往下走
#include#include#includeusing namespace std;
#define road_m 10005
#define city_m 105
#define inf 9999999
struct
road[road_m];
int head[city_m],vis[city_m];
int min_dis,k,n;
void dfs(int now_city,int cost,int now_dis)
road[road_m];
int head[city_m],vis[city_m];
int min_dis,k,n;
struct state
for(i=head[nc];i!=-1;i=road[i].next)
} }}
int main(void)
bfs();
return 0;
}
入住部落格園第一天
今天是入住的第一天。學習並分享c 語言為主。有關內容會在以後不定時更新。有幸哪位大神見到本人分享內容,望勿噴,有不對的地方,希望及時提出。簡單介紹下本人 2013年大學畢業到至今 2021年 3月 工作單位以及崗位沒有變化。近8年的it行業 只是做著運營 運維?方面的工作。對於從專案開發從無到有經驗...
部落格的第一天
今天,2016.06.12,是個值得紀念的日子,開通了部落格。今天,是我和部落格結緣的日子,歡迎你的到來,歡迎你的來訪,留下你的足跡,記錄你的精彩,分享自己心得,共同進步成長,在此,我想感謝你們的來訪,有幾句話送給,來訪的朋友們和自己,1.開工沒有回頭箭,回頭即是空 2.往往現實就是那樣殘酷,正因你...
第一天的部落格
大四剛畢業這個階段很尷尬,基礎不是很好,但是又想求乙份不錯的工作,在這個炎炎七月顯得很不容易。尋求了一段時間後無結果,想到自己的以後該何去何從,所以索性寫下這篇部落格,一是可以不斷的督促自己,好好學習,天天向上,另一方面也是告誡學弟學妹們在大學期間還是要把基礎給打牢,不要盲目的瘋玩。還有一點就是我們...