luogu2625 豪華遊輪

2022-09-07 18:12:14 字數 751 閱讀 6199

luogu2625

若無角度限制,最遠距離就是先向前走完forward,再轉180度走backward,有角度限制時,旋轉角度越接近180,距離最遠(已知三角形兩邊,夾角越大,第三邊越大)

用揹包掃出所有可能的角度

#include #include #include #include #define pi 3.1415926535898

using namespace std;

char s[10];

int n,a[55],t,forward,backward;

bool f[55][365];

int main()

f[0][0]=1;

for(int i=1;i<=a[0];i++)

for(int j=0;j<360;j++)

f[i][j]=(f[i-1][(j+a[i]+360)%360]|f[i-1][j]);

int dif=180;

for(int j=0;j<360;j++)

if(f[a[0]][j]&&abs(j-180)double ans=sqrt((double)forward*forward+(double)backward*backward-(double)2*forward*backward*(cos((double)(180-dif)*pi/180)));//餘弦定理

printf("%lf",ans);

return 0;

}

洛谷 P2625 豪華遊輪

題目描述 有一條豪華遊輪 其實就是條小木船 這種船可以執行4種指令 right x 其中x是乙個1到719的整數,這個命令使得船順時針轉動x度。left x 其中x是乙個1到719的整數,這個命令使得船逆時針轉動x度。forward x 其中x是乙個整數 1到1000 使得船向正前方前進x的距離。b...

洛谷 P2625 豪華遊輪

題目描述 有一條豪華遊輪 其實就是條小木船 這種船可以執行4種指令 right x 其中x是乙個1到719的整數,這個命令使得船順時針轉動x度。left x 其中x是乙個1到719的整數,這個命令使得船逆時針轉動x度。forward x 其中x是乙個整數 1到1000 使得船向正前方前進x的距離。b...

洛谷P2625 豪華遊輪

有一條豪華遊輪 其實就是條小木船 這種船可以執行4種指令 right x 其中x是乙個1到719的整數,這個命令使得船順時針轉動x度。left x 其中x是乙個1到719的整數,這個命令使得船逆時針轉動x度。forward x 其中x是乙個整數 1到1000 使得船向正前方前進x的距離。backwa...