詳細**可以fork下github上leetcode專案,不定期更新。練習題如下:
01分數規劃,具體可以參考博文寫的非常詳細且通俗易懂。
我的認識:中學裡學過二分法求函式零點,其實該**模擬的就是這種求解過程,所以只要寫出目標函式,零點不難求。
接著就得到了求和式: ∑i
=1n(
ai−l
⋅bi)
≥0要刪除k個物品,當然選擇貢獻最小的,所以按照ai
−l⋅b
i 排序,選擇n-k個物品,排除其餘貢獻較小的k個物品。
**如下:
static class pair implements comparable
}static pair p;
static
double l;
static
int k;
static
int n;
public
static
void
main(string args) throws ioexception
for (int i = 0; i < n; ++i)
double lf = 0;
double rt = 1;
while (math.abs(rt -lf) > 1e-4)
system.out.printf("%.0f\n",lf * 100);}}
public
static
boolean
valid(double mid)
return sum > 0;
}
和上一題乙個思路,但此題精度要求要高很多,按照上一題的while迴圈,wa了,測了下,大概迴圈14次左右,而此題迴圈50次,可以達到0.000000001的精度。注意記錄下下標。
**如下:
static class pair implements comparable
}static
double l;
static pair p;
static
int n;
static
int k;
public
static
void
main(string args) throws ioexception
double lf = 0.0;
double rt = max;
for (int i = 0; i < 50; ++i)
for (int i = 0; i < k; ++i) ans[i] = p[i].id;
stringbuilder sb = new stringbuilder();
arrays.sort(ans);
for (int i : ans)
system.out.println(sb.tostring().trim());
}static
int ans;
public
static
boolean
valid(double mid)
return sum > 0;
}
挑戰程式競賽系列(14) 2 6素數
詳細 可以fork下github上leetcode專案,不定期更新。練習題如下 非常easy,素數就是從最小數開始生成的,它的倍數都不是素數,應該說這是素數最本源的定義了。如下 艾氏篩法 public static void main string args throws numberformate...
VC2010 程式如何初始最大化
vc2010 程式如何初始最大化 vc2010 sp1做出來的程式與以前相比介面美觀了很多,但有些地方該的不符合習慣了,例如程式啟動自動最大化的問題,原來可以用 m pmainwnd showwindow sw showmaximized 實現,但2008這樣寫程式第一次會最大化,以後開啟程式,程式...
VC2010 程式如何初始最大化
vc2010 sp1做出來的程式與以前相比介面美觀了很多,但有些地方該的不符合習慣了,例如程式啟動自動最大化的問題,原來可以用 m pmainwnd showwindow sw showmaximized 實現,但2008這樣寫程式第一次會最大化,以後開啟程式,程式會成普通狀態,大小和所包含的for...