BZOJ 1202 狡猾的商人

2022-05-12 16:26:17 字數 842 閱讀 3558

先處理成字首和關係,然後可以很明顯得看得出這是乙個差分約束。那麼就是最短路問題了。

順便複習了一下spfa加slf優化是怎麼寫的,也學習到了另乙個stl——deque雙向佇列。

#include #include #include #include #include #include #include #include #define rep(i, l, r) for(int i = l; i <= r; i++)

#define down(i, l, r) for(int i = l; i >= r; i--)

#define n 123

#define m 2345

#define ll long long

using namespace std;

inline int read()

while (ch>='0' && ch<='9')

return x*f;

}struct edge e[m]; int fir[n], en;

int t, n, m, d[n], c[n], x, y, z;

bool b[n], ans;

deque q;

void adde(int x, int y, int z)

void init()

int main()

int o = fir[x], y = e[o].y;

while (o)

o=e[o].n, y=e[o].y;

}} if (ans) printf("true\n"); else printf("false\n");

} return 0;

}

bzoj1202 狡猾的商人

如果這個賬本是真的話,那麼對於乙個s,t,在圖上,兩個點之間任意一條路徑的長度都必須相等,不然這個賬本就不是真的。用並查集在維護這個資訊,也就是字首和,字首和就是前i個月收入的錢,那麼對於任意一行資料 s t v 都有 sum s sum t v 然後在並查集的時候,查詢父親節點的時候,將sum值累...

bzoj1202 狡猾的商人

time limit 10 sec memory limit 162 mb submit 3569 solved 1717 submit status discuss 刁奼接到乙個任務,為稅務部門調查一位商人的賬本,看看賬本是不是偽造的。賬本上記錄了n個月以來的收入情況,其中第i 個月的收入額為ai...

BZOJ1202 狡猾的商人

知識點 差分約束 難點 找到正確的不等關係然後建圖 關於建圖 一段時間內的收入及字首和,l r天的收入用字首和表達即sum r sum l 1 對於每乙個賬本,如果它是假的,可能會出現這種情況 sum 1,2 1,sum 2,3 1,sum 1,3 1 顯然 第一天第二天第三天收入為2,與sum 1...