P1102 A B 數對(二分,對映)難度

2021-10-03 17:40:37 字數 1047 閱讀 2947

給出一串數以及乙個數字

c,要求計算出所有 a−b

=c

a−b=c

a−b=

c 的數對的個數(不同位置的數字一樣的數對算不同的數對)。

輸入格式

輸入共兩行。

第一行,兩個整數 n,c。

第二行,n 個整數,作為要求處理的那串數。

輸出格式

一行,表示該串數中包含的滿足 a−b

=c

a−b=c

a−b=

c 的數對的個數。

411

123

3
很簡單的一道題,要注意的是對映的思想

利用二分,一遍迴圈列舉找bb,中間二分找c,時間複雜度o(nlogn),本題也可以利用stl中自帶的紅黑樹map達到acac的效果

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

typedef

long

long ll;

typedef pair<

double

,ll>pdl;

#define debug(x) cerr<<"# "2e5+7;

const ll base=

137;

const ll mod=

2147483647

;const

int inf =

1<<30;

ll n,m,a[n]

,b,c,ans;

unordered_mapmp;

intmain()

for(

int i=

1;i<=n;

++i)

printf

("%lld\n"

,ans)

;}

P1102 A B 數對(二分)

p1102 a b 數對 出題是一件痛苦的事情!相同的題目看多了也會有審美疲勞,於是我捨棄了大家所熟悉的 a b problem,改用 a b 了哈哈!好吧,題目是這樣的 給出一串數以及乙個數字 c,要求計算出所有 a b c 的數對的個數 不同位置的數字一樣的數對算不同的數對 輸入共兩行。第一行,...

P1102 A B 數對(二分查詢)

題目描述 出題是一件痛苦的事情!相同的題目看多了也會有審美疲勞,於是我捨棄了大家所熟悉的 a b problem,改用 a b 了哈哈!好吧,題目是這樣的 給出一串數以及乙個數字 c,要求計算出所有 a b c 的數對的個數 不同位置的數字一樣的數對算不同的數對 輸入格式 輸入共兩行。第一行,兩個整...

P1102 A B 數對 二分查詢

出題是一件痛苦的事情!相同的題目看多了也會有審美疲勞,於是我捨棄了大家所熟悉的 a b problem,改用 a b 了哈哈!好吧,題目是這樣的 給出一串數以及乙個數字 c,要求計算出所有 a b c 的數對的個數 不同位置的數字一樣的數對算不同的數對 輸入共兩行。第一行,兩個整數 n,c。第二行,...