原创 “-=” 粗心了

目的是 tot = (tot - num + debt[i]) 一不小心就寫成這樣了: tot -=  num + debt[i];   應該是這樣的: tot = tot - num + debt[i];   代碼可是看了很久,才找到錯

原创 運動會(sort+結構體+分段sort)

運動會 Time limit: 1000MS    Memory limit: 32768K Total Submit: 53    Accepted: 27 學校一年一度的運動會開始了,由於參加的運動員人數相當多使得名單變得雜亂無

原创 求有向面積(多邊形面積)

#include<stdio.h> #include<math.h> #define MAX 1001 int main() { int n,i; double x[MAX],y[MAX],dsum; while(scanf("%d

原创 求連續段最大和(dp)

最大的和 Time limit: 1000MS    Memory limit: 32768K Total Submit: 77    Accepted: 39 Problem Description給出一串 a[1],a[2],a

原创 rope poj

http://acm.pku.edu.cn/JudgeOnline/problem?id=2365   鄙視一下自己,淨犯低級錯誤   #include<stdio.h> #include<math.h> #define PI 3.141

原创 Exploration poj

題目:http://acm.pku.edu.cn/JudgeOnline/problem?id=3618 注意沒有距離原點等長的兩點。   abs()用的極妙; 先前我的代碼寫了146行,自己都受不了了,而且提交還是錯的,鬱悶; 後來看了

原创 編程命名中的7+1個提示(轉)

轉自:http://www.360doc.com/showweb/0/0/24257293.aspx 前幾天Neo寫過《編程中的命名設計那點事》,這裏也有另外一篇和程序命名的文章,可以從另一個角度看看。 1.- 變量應該是儘可能的望文知

原创 再論字典序

排列下一個字典序:   從原排列後部開始,對相鄰一對進行比較,若前者小於後者,標記前者下標爲 j; 令 k = len - 1, k 遞減,尋找到 order[ K ]  > order[  j ] (k > j) ,交換兩項; 對 or

原创 Electio Time poj

第一次用結構體,寫些自己的心得:       #include<stdio.h> #include<algorithm> using namespace std; #define MAX 50000 struct COW //定義

原创 Close Encounter

http://acm.pku.edu.cn/JudgeOnline/problem?id=3039   題意:找到一個最接近於 input分式 的分式   思路:分母從 1 到 62767 一次枚舉,用 min 記錄 原分式的值 與 當前

原创 對二維字符數組排序(2sort和1qsort)

   sort,用到了結構體   第一種sort: 282MS #include<stdio.h> #include<algorithm> using namespace std; struct Array { char data[3

原创 第一次完成DFS

http://acm.pku.edu.cn/JudgeOnline/problem?id=1164   題目求: 房間的個數  和  房間的最大面積。   思路:爲了調試看起來方便,用8表示牆,用0表示通路(當然房間區域也是可以走通的,所

原创 進制轉換

     #include<stdio.h> #include<string.h> const char bit[]={"0123456789ABCDEF"}; // 下表對應取餘操作得出的值 void convert(char * s

原创 放蘋果——遞歸

http://acm.pku.edu.cn/JudgeOnline/problem?id=1664   還是沒理解爲什麼這麼做     #include<stdio.h> int dg(int m, int n) { if(m < 0

原创 DP應用

http://acm.pku.edu.cn/JudgeOnline/problem?id=1088      狀態轉移方程: DP(i ,j) = max(DP(i - 1, j), DP(i  + 1,j), DP(i , j - 1)