1582 分組的困擾(思路)

2022-05-27 18:22:37 字數 745 閱讀 2356

有n個人想要下棋(1 對 1),但是大家都想和與自己水平差不多的人下棋,已知每個人都有乙個實力值,如果倆人實力相差 >= k,那麼他們就不會浪費時間去切磋棋藝。求最多需要多少棋盤,兩個人互相切磋只需要乙個棋盤。  

第一行乙個整數t,表示t組輸入,t <= 100

接下來t組資料,每組資料第一行有兩個整數用空格分隔表示n,k,(1 <= n,k <= 1000)。

每組資料第二行,有n個整數用空格分隔表示a_i,(0 <= a_i <= 10000)

每組資料輸出乙個整數佔一行表示最多需要多少棋盤
複製

1

5 21 2 3 4 5

2
思路:

假設4人,a1,a2,a3,a4,從小到大排序,如果a3-a1,a4-a2都成立,那麼a2-a1,a4-a3一定成立。

所以排個序,掃過去即可。

#include#include#include#include#include#include#includeconst double pi = acos(-1);

const int n=1e6+5;

#define mm(a) memset(a,0,sizeof(a))

using namespace std;

int a[n];

int main()

printf("%d\n",ans);

}return 0;

}

2066 分組統計

時間限制 1 sec 記憶體限制 32 mb 提交 474 解決 115 提交 狀態 討論版 命題人 外部匯入 先輸入一組數,然後輸入其分組,按照分組統計出現次數並輸出,參見樣例。輸入第一行表示樣例數m,對於每個樣例,第一行為數的個數n,接下來兩行分別有n個數,第一行有n個數,第二行的n個數分別對應...

模擬8 03 分組

好題 k 1做法 直接倒著找,滿足貪心性質,預處理出每個平方數就行.1 include2 include3 include 4 include5 include6 include7 include8 include 9 include10 define maxn 300001 11 define i...

4 分組聚合

引數名 接受 含義 預設 by 1.若為函式,則對索引進行計算並分組 2.若為字典 series,則將字典 series的值做為分組依據 3.若為numpy陣列,則以陣列元素為分組依據 4.若為字串 字串列表,則以其所代表的字段進行分組 無axis int表示操作軸向 0level int 索引名 ...