8-13
洛谷p1057傳球遊戲
(看到什麼都像dp的毛病得改)
#includeusing namespace std;
int a[40][40]=,n,m,l,r;
int main()
printf("%d",a[m][1]);
return 0;
}
p1025數的劃分
寫了dfs的版本,第二類string數什麼的。。。以後再說吧(flag)
dfs+剪枝,暴力出奇蹟
ps:c++的計時真的不准。。。
#includeusing namespace std;
int a[10]=,n,k,s=0;
void dfs(int deep,int sum)
if(deep==k||sum>=n)return;
for(int i=a[deep-1];i<=n-sum;++i)
return;
}int main()
明天:寫完作業,質檢員
8-16
p1314聰明的質監員
二分,智障錯誤耽誤了一天。。。
#includeusing namespace std;
long long n,m,ss,w,now=40000000000000ll,ma=0;
struct stone
;stone a[200010];
struct block
;block b[200010];
struct total
;total s[200010];
void in()
void first(long long w)
else
} return;
}bool check(long long w)
bit=check(l);
bit=check(r);
printf("%lld",now);
return 0;
}
分治 二分查詢
在我被二分木棍,二分求解高次方程組等等問題卡精度卡到懷疑人生之後,我決定這次用最簡單的例子來介紹一下二分查詢這個演算法。演算法核心 二分演算法的核心就是通過待查詢資料與查詢域中值的大小關係來縮小查詢範圍,二分查詢的時間複雜度為o logn 演算法流程 num 待查詢資料 a 查詢範圍 l 查詢範圍起...
分治演算法 二分搜尋
一.演算法簡介 以有序表表示靜態查詢表時,查詢函式可以用二分查詢 binary search orhalf intervalsearch 來實現。這種演算法基於分治。二 複雜度分析 二分查詢的時間複雜度是 o log n 最壞情況下的時間複雜度是 o n 三 演算法思想及步驟 二分查詢 binary...
分治法 二分查詢
1 首先二分查詢滿足分治法的四個條件 1 原問題的解可以通過分解為若干個小的問題來解決 將原陣列序列可分解為兩個子串行 2 小的問題的解決方法和原問題的解決方法大致相似 都是確定乙個序列的上界和下界然後求得mid進行比較 3 小問題的解可以通過合併從而得到原問題的解 在子串行中可以更容易得到解從而r...