l2-028 秀恩愛分得快 (25 分)
思路:(1)遍歷每個**裡的人需要約1000*500*500 = 2.5*10^8的複雜度,肯定就爆掉了,所以可以只遍歷題目中的
a與b所在的**,複雜度約為1000*500 = 5*10^5,而且用性別篩選後複雜度又可以下降很多。
(2)a與b是最親密的,a與b是最親密的,a與b是最親密的,重要的事情說三遍,這是題目給出的成立條件,
所以要分別找出a中的最親密的人和b中最親密的人的親密值,然後判斷a,b是否是最親密的一對。
(3)要用字串的輸入,因為要判斷-0的情況,如果是printf("%d",-0);的話結果還是0,沒有加上負號,所以
一定要用性別特殊判斷一下。
#include#include#include#include#include#includeusing namespace std;
const int maxn = 1200;
vector vc[maxn],v1,v2;
set set[maxn];
int gen[maxn]=,mp[maxn][maxn]=;
double a1[maxn]=,a2[maxn]=;
int f(char *s)
int main(void)
} scanf("%s%s",s1,s2);
int t1=f(s1),t2=f(s2);
gen[t1]=(s1[0]=='-'?2:1);
gen[t2]=(s2[0]=='-'?2:1);
double mx1=0.0,mx2=0.0;
for(i=0;i} if(set[i].count(t2))
} }int fg=0;
v1.clear();
for(i=0;iif(a1[i]==mx1)
v2.clear();
for(i=0;iif(a2[i]==mx2&&i!=t1)
//x=(gen[t1]==2?-t1:t1);
//y=(gen[t2]==2?-t2:t2);
if(mx1==a1[t2]&&mx2==a2[t1])
else
for(i=0;i} return 0;
}
L2 028 秀恩愛分得快(25 分)
l2 028 秀恩愛分得快 25 分 古人云 秀恩愛,分得快。網際網路上每天都有大量人發布大量 我們通過分析這些 可以分析人與人之間的親密度。如果一張 上出現了 k 個人,這些人兩兩間的親密度就被定義為 1 k。任意兩個人如果同時出現在若干張 裡,他們之間的親密度就是所有這些同框 對應的親密度之和。...
L2 028 秀恩愛分得快
l2 028 秀恩愛分得快 古人云 秀恩愛,分得快。網際網路上每天都有大量人發布大量 我們通過分析這些 可以分析人與人之間的親密度。如果一張 上出現了 k 個人,這些人兩兩間的親密度就被定義為 1 k。任意兩個人如果同時出現在若干張 裡,他們之間的親密度就是所有這些同框 對應的親密度之和。下面給定一...
天梯賽 L2 028 秀恩愛分得快 25分
古人云 秀恩愛,分得快。網際網路上每天都有大量人發布大量 我們通過分析這些 可以分析人與人之間的親密度。如果一張 上出現了 k 個人,這些人兩兩間的親密度就被定義為 1 k。任意兩個人如果同時出現在若干張 裡,他們之間的親密度就是所有這些同框 對應的親密度之和。下面給定一批 請你分析一對給定的情侶,...