數對的個數 cogs610

2022-05-14 07:09:59 字數 1132 閱讀 1455

description

出題是一件痛苦的事情!

題目看多了也有審美疲勞,於是我捨棄了大家所熟悉的a+b problem,改用a-b了哈哈!

好吧,題目是這樣的:給出一串數以及乙個數字c,要求計算出所有a-b=c的數對的個數。

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

input format

第一行包括2個非負整數n和c,中間用空格隔開。

第二行有n個整數,中間用空格隔開,作為要求處理的那串數。

output format

輸出一行,表示該串數中包含的所有滿足a-b=c的數對的個數。

sample input

4 11 1 2 3

sample output

3data limit

對於90%的資料,n <= 2000;

對於100%的資料,n <= 200000。

所有輸入資料都在longint範圍內。

/*

簡單hash

*/#include

#include

#define n 200010

#define mod 1654573

using

namespace

std;

int head[mod+10

],a[n],n,c,ans,cnt;

struct

node;node e[n];

void add(int x,int

y) ++cnt;

e[cnt].v=y;

e[cnt].pre=head[x];

e[cnt].sum++;

head[x]=cnt;

}int query(int x,int

y)

return0;

}void

out(long

long

x)int

main()

long

long ans=0

;

for(int i=1;i<=n;i++)

out(ans);

return0;

}

cogs 610 數對的個數

輸入檔案 dec.in輸出檔案 dec.out簡單對比 時間限制 1 s 記憶體限制 128 mb description 出題是一件痛苦的事情!題目看多了也有審美疲勞,於是我捨棄了大家所熟悉的a b problem,改用a b了哈哈!好吧,題目是這樣的 給出一串數以及乙個數字c,要求計算出所有a ...

super oj p527(數對個數DEC)

很顯然,題目中給出的計算方式 a b c a,b都是未知的,所以唯一的做法是對其中乙個數字在給出的數串當中進行列舉,c是唯一確定的,所以列舉每一位數時對應的匹配數也是對應的,只需要查詢這個對應數在給出資料當中是否存在,則就讓我們聯想到了hash匹配。由於題目中告訴條件 不同位置的數字一樣的數對算不同...

對10個數進行排序

解題思路 可以採用氣泡排序,每次把相鄰的兩個比較大小,然後把大一點兒的資料放在最後面,這樣第一趟下來,最大的那個數就跑到了最後面,下一次排序就不用跟最後乙個數字比較了,然後倒數第二大的數字會在倒數第二.因此可以使用兩個函式,乙個用於控制每一趟比較的元素個數,乙個用於交換 public class m...