團體程式設計天梯賽PTA L2 005集合相似度

2022-06-18 02:54:09 字數 1000 閱讀 7692

題目:給定兩個整數集合,它們的相似度定義為:n​c​​/n​t​​×100%。其中n​c​​是兩個集合都有的不相等整數的個數,n​t​​是兩個集合一共有的不相等整數的個數。你的任務就是計算任意一對給定集合的相似度。

題意:nc就是兩個集合中共同都出現數的個數,nt為一共有幾個不一樣的數(這道題先考了語文...)然後一除算出百分形式得出答案

思路:用set容器進行模擬,把各組數分別裝進set容器中,減去了查重的步驟。再用count函式判斷兩個陣列重複出現的數的個數可以大大縮短時間。

(別莽,暴力會出事...最後乙個例子卡暴力

1 #include 2 #include3 #include4 #include

5 #include

6 #include

7 #include8 #include9

using

namespace

std;

1011

const

int n = 1e4 + 10;12

set::iterator itt;

13set

s[55];//

將陣列都存在set容器裡

1415

void init()//

初始化1621}

22int

main()

2336

}37 scanf("

%d",&k);

38int

f1,f2;

39for(int i = 1; i <= k; i ++)

405354}

55//

分母就是兩個set容量再減去重合的部分

56 t = s[f1].size() + s[f2].size() -c;

57 printf("

%.2lf%%\n

",c/(double)t*100

);5859}

60return0;

61 }

團體程式設計天梯賽PTA L2 020功夫傳人

分析 題意不難理解,看上去就是不太難的題,然後wa了一天qaq 用bfs和並查集應該都能做,然後我沒壓縮好,一會超時一會超記憶體。最後用模擬stack儲存輩分數降低了遞迴的時間複雜度。1 include 2 include3 include4 include5 include6 using name...

團體程式設計天梯賽

l1 001 hello world l1 002 列印沙漏 l1 009 n個數求和 l1 010 比較大小 l1 011 a b l1 013 計算階乘和 l1 014 簡單題 l1 015 跟歐巴馬一起畫方塊 l1 016 查驗身份證 l1 017 到底有多二 l1 020 帥到沒朋友 l1 ...

團體程式設計天梯賽PTA L1 009 N個數求和

題意 求n個分數的和,用帶分數的形式輸出 思路 算出各個分母的最小公倍數,在進行分子相加,最後化簡 1 include2 include3 輾轉相除法求出最大公約數45 int g long long x,long longy 6 11int main 1220 long long m 1 21 f...