a.ribbon gymnastics
題目要求四個點作圓,且圓與圓之間不能相交的半徑之和的最大值。我當時想法很簡單,只要兩圓相切,它們的半徑之和一定最大,但是要保證不能相交的話就只能取兩兩個點間距離和最短的作為半徑和最大的。到現在也不是非常清楚為什麼可以a,我們帶錯節奏了。。
#include#include#include#include#include#include#define exp 1e-10
using namespace std;
inline void rd(int &ret)
while(c<'0'||c>'9');
ret=c-'0';
while((c=getchar())>='0'&&c<='9')
}inline void ot(int a)
putchar(a%10+'0');
}double x[4],y[4];
double getdis(int i ,int j)
int main()
s1=getdis(0,1)+getdis(2,3);
s2=getdis(1,2)+getdis(0,3);
s3=getdis(0,2)+getdis(1,3);
printf("%.6f\n",min(s1,min(s2,s3)));
}return 0 ;
}
e.magnet darts
一道計算幾何題,計算落在距離要求點乙個單位正方形範圍內的點都需要得到乙個分數,求期望。由於讀錯題意,想太複雜了。。。
我們可以列舉矩形內的所有整點,判斷整點是否在要求的多邊形內或邊緣,計算整點周圍區域面積乘以分數,相加求和,再與平面總面積相除,求期望。
#include#include#include#include#include#include#define exp 1e-10
using namespace std;
inline void rd(int &ret)
while(c<'0'||c>'9');
ret=c-'0';
while((c=getchar())>='0'&&c<='9')
}inline void ot(int a)
putchar(a%10+'0');
}struct xl
p[22];
int n;
int f2(double x)//判斷是否為零
if(f2(f1(p2,z,p1))<0&&f2(p1.y-z.y)>0&&f2(p2.y-z.y)<=0)
}if(j!=0)
else
}int main()
while(c<'0'||c>'9');
ret=c-'0';
while((c=getchar())>='0'&&c<='9')
}inline void ot(int a)
putchar(a%10+'0');
}struct xl
s[100001];
bool cmp(xl x,xl y)//結構體排序
r=min(r,s[i].y);
}ot(j);
for(i=0; i
j.painting storages
一道排列組合的題目,需要找到狀態分解:
當dp[i-1]已經滿足狀況了:dp[i]=dp[i-1]*2;
當dp[i-1]還沒滿足狀況,則[i-m+1,i]區間則用來滿足條件,則i-m必為藍色,所以dp[i-m-1]不能包括在內。所以需要dp[i-1]+pow(2,i-m-1)-dp[i-m-1];
#include#include#include#include#include#include#define n 1000000007
using namespace std;
inline void rd(int &ret)
while(c<'0'||c>'9');
ret=c-'0';
while((c=getchar())>='0'&&c<='9')
}inline void ot(int a)
putchar(a%10+'0');
}long long dp[100001],a[100001];
void f()
}int main()
cout<
13多校 4 ,組隊賽 18 總結
解題報告 來自杭電acm微博 注意到任意乙個回文子串行收尾兩個字元一定是相同的,於是可以區間dp,用dp i j 表示原字串中 i,j 位置 現的回文子串行的個數,有遞推關係 dp i j dp i 1 j dp i j 1 dp i 1 j 1 如果i和j位置出現的字元相同,那麼dp i j 可以...
20110805 組隊賽 f題
測試資料有多組,對於每組資料,第一行為乙個整數n 1 n 10000 表示表示式中數字的個數,其後的第i 1行每行有乙個整數表示xi的值 1 i n 1 xi 1000000000 對於每組資料,如果你能幫阿里巴巴開啟石門,輸出yes,否則輸出no。58421143579 yesno 這是劉汝佳黑書...
04 18組隊訓練 2 ZOJ 4028 LIS
題目速遞 題意 原始陣列a,f i 定義為以a i 結尾的最長上公升子串行的長度。現a陣列遺失,已知l i a i r i 要求還原a陣列,當答案有多個時,輸出其中任意乙個即可。題解 假定下標i,j i a j 若f i 1 f j 則a i 注意 若對於j,前面存在不止乙個的下標i,使得f i 1...