原创 hdu 1800 Flying to the Mars(水 ,貪心)

其實就是求最大的相同的數的多少。。 我是把它當字符串輸入。。解決前導0的問題。。 #include<stdio.h> #include<iostream> #include<string.h> #include<algorithm> us

原创 codeforces 258(Div.2) C. Predict Outcome of the Game

題意:有三個球隊進行了N場比賽,其中K場已經比完了,但是你不知道結果。d1,d2是各自勝場的絕對值,比如一隊和二隊勝場差是d1,二隊和三隊勝場差是d2.問比完所有N場比賽是否存在各自都打平了。 題解:根據他們的兩個勝場差d1,d2可以

原创 poj3126Prime Path

就因爲在判斷素數的時候少個等於號  糾結一天,。。。。 #include<stdio.h> #include<string.h> #include<cmath> #include<queue> #include<iostream> #in

原创 poj 2970 優先隊列

先按di排序,(從小到大)。然後依次完成合同,若發現第i個合同無法在截止日期前完成,便從之前已經完成的任務中選一個aj最大的合同,付錢來使得這個合同儘快完成。 #include<cstring> #include<cstdio> #inc

原创 hdu 1176 免費餡餅(dp)

對於每個位置的餡餅數目只上一秒它本身和左右位置的最大餡餅數有關。。 也可將他看做數塔。。 從後往前找最大值。。 #include<stdio.h> #include<string.h> #include<iostream> #includ

原创 poj1035Spell checker

暴力解決。先把字典裏的每個單詞的長度存起來,在查找的時候,就比較長度,在多一個少一個之間找, #include<stdio.h> #include<string.h> #include<iostream> #include<stdlib.

原创 hud 2570 迷障(水 貪心)

對給的藥水濃度進行排序,對於小於解毒藥水濃度的可以直接加上它的體積,對每次混合後的藥水濃度進行記錄, 大於解毒藥水濃度就輸出,注意你求得是百分比還是百分數。。。 #include<stdio.h> #include<algorithm>

原创 UVA 127 Accordian'' Patience

題意:把一堆撲克牌,按照規則:如果左邊1張或3張和它具有同花色或等級,把這張牌移到上面去,每次移動後,在從頭開始移動,知道都移動完,輸出剩餘幾堆與每堆牌數,如果1張牌有2個可以移動的地方,優先移動到左3位置。 思路:用結構體存每一張牌,

原创 poj 2406 Power Strings KMP匹配

對於數組s[0~n-1],計算next[0~n](多計算一位)。 考慮next[n],假設t=n-next[n],如果n%t==0,則t就是問題的解,否則解爲1。 這樣考慮: 比如字符串"abababab",          

原创 hdu 4217Data Structure?

樹狀數組+二分 就是找第幾小的數,,找幾次,再求和。。 #include<cstdio> #include<cstring> #include<iostream> #include<queue> #include<algorithm>

原创 poj 2752 Seek the Name, Seek the Fame KMP

對於KMP算法中next函數的應用 題意是對於一個字符串的前綴和後綴比較是否相等,再把相等的可能按字符串長度進行輸出 #include <iostream> #include<stdio.h> #include<string.h> usi

原创 hdu 1285 確定比賽名次 拓撲排序

第一道拓撲排序題。。 拓撲排序就是一個有向圖,如果這個圖有環就不能用拓撲排序。 對於拓撲排序就是將沒有進只有出的點或別的先出。。出來後將原來圖中與輸出有關的線全部刪除,直到找不到這要的點或數據。。 注意對重邊的處理 #include<st

原创 hdu 1175 連連看

本題DFS與BFS都可以 就是判斷在兩次轉彎後 能不能找到。。 BFS #include<stdio.h> #include<string.h> #include<stdlib.h> #include<iostream> #includ

原创 hdu 2594 Simpsons’ Hidden Talents

題意是求第一個字符的前綴和後一個字符串的後綴最大的公共序列,並輸出。。。 將兩個字符串合併,求出kmp中的next數組就行,但要注意不要大於某個字符串的長度; #include <stdio.h> #include <string.h>

原创 hdu 1003 MAX sum (簡單DP)

起始點是從頭開始的,一直到後面搜索,一直到和爲小於零,起始點就從開始小於零的後一位開始並把結果改爲零,再搜索的過程中,一遇到大的數據就記錄下來,把其計爲起始點和終點的,這裏面主要考慮到,當你搜索到一個位置的,它的和不小於零的,那對於後面來