高精度乘法、數學公式的推導能力
分析:1、根據題意可分析出土豆火箭一定安排在一起且土豆在前。
2、計算出放置多少個火箭使殭屍的傷害值最大。
設放置k個火箭;則土豆的個數為n-k。k確定了傷害值也就定了。
n-k個土豆的傷害為:a*k*(b+1)*(n-k);
k個火箭的傷害為a*k+2*a(k-1 + k-2 +…+1)=a*k*k。
總和為-a*b*k*k+a*b*n*k+a*n*k
k為何值時,上式達到最大值。k=n*(b+1)/(2*b)時,上式會達到極值。注意對k四捨五入。
k值確定就可以直接計算出最大的傷害值。需要高精度。
1、根據a b n的範圍可知計算k時可直接計算。
n, a, b, k: int64;
k := round(n*(b + 1)/(2*b); 一定要四捨五入
2、已知k代入下式計算
-a*b*k*k+a*b*n*k+a*n*k=-ak(b*k-b*n-n) =-ak(b(k-n)-n)=ak(b(n-k)+n)
其中ak<=int64可儲存;b(n-k)+n<=int64可儲存
20位×20位結果40位。高精度乘法即可。
ps:表示不會高精度乘法——||
program plant;
var ans:array [-1..1000] of integer;
s1,s2:ansistring;
x,y,n,a,b,k:int64;
procedure change(xx:int64;var s:ansistring);
var i:longint;
t:char;
begin
s:='';
while xx>0 do
begin
s:=s+chr(ord(xx mod 10)+48);
xx:=xx div 10;
end;
for i:=1 to (length(s) >> 1) do
begin
t:=s[i];
s[i]:=s[length(s)-i+1];
s[length(s)-i+1]:=t;
end;
end;
procedure gjc(ss1,ss2:ansistring);
var i,j,len1,len2,jinwei,weishu:longint;
begin
len1:=length(ss1);
len2:=length(ss2);
for i:=1 to len2 do
begin
jinwei:=0;
for j:=1 to len1 do
begin
ans[i+j-1]:=(ord(ss1[len1+1-j])-48)*(ord(ss2[len2+1-i])-48)+jinwei+ans[i+j-1];
jinwei:=ans[i+j-1] div 10;
ans[i+j-1]:=ans[i+j-1] mod 10;
end;
weishu:=len1+i-1;
while jinwei<>0 do
begin
inc(weishu);
ans[weishu]:=(jinwei+ans[weishu]);
jinwei:=(ans[weishu]) div 10;
ans[weishu]:=(ans[weishu]) mod 10;
end;
end;
for i:=weishu downto 1 do write(ans[i]);
end;
begin
assign(input,'plant.in'); reset(input);
assign(output,'plant.out'); rewrite(output);
readln(n,a,b);
k:=round(n*(b+1)/(2*b));
x:=a*k;
y:=b*(n-k)+n;
change(x,s1);
change(y,s2);
gjc(s1,s2);
close(input); close(output);
end.
NDK開發指南 NDK安裝
android ndk 安裝 安裝 1 安裝需要 android ndk目前可以在linux os x 或者 windows作業系統上使用 windows使用者需要安裝cygwin1.7或以後的版本,注意,現在msys和cygwin1.5現在已經不支援了 你必須搭建了android sdk環境才可以...
NDK學習二 NDK目錄結構
ndk目錄結構 目錄名描述 build 其中makefile檔案都存放在build core目錄 docs 幫助文件 platforms 存放不同android版本,不同平台架構的標頭檔案和庫檔案 prebuilt 存放和編譯相關工具比如make.exe samples ndk 例子,用根目錄下的n...
NDK引用NDK生成的so
1 編譯so庫 假如我們的 需要加密而不被別人知道,這裡可以通過ndk編譯生成so 準備好加密 檔案 encrypt.h encrypt.c 放進jni目錄 編寫mk檔案,放進jni目錄 local path call my dir include clear vars local module e...