玲瓏杯1143 計算幾何你瞎暴力

2021-09-30 14:13:12 字數 1823 閱讀 4066

1143 - 計算幾何你瞎暴力

time limit:5s

memory limit:256mbyte

submissions:1735solved:341

description 今天

hhhh考完了期末考試,他在教學樓裡閒逛,他看著教學樓裡一間間的教室,於是開始思考:

如果從乙個座標為 (x

1,y1

,z1)

(x1,y1,z1)

的教室走到(x

2,y2

,z2)

(x2,y2,z2)

的距離為|x

1−x2

|+|y

1−y2

|+|z

1−z2

||x1−x2|+|y1−y2|+|z1−z2|

那麼有多少對教室之間的距離是不超過rr

的呢?

input

第一行是乙個整數

t(1≤t≤10

)t(1≤t≤10)

, 表示有

tt組資料接下來是

tt組資料,對於每組資料:第一行是兩個整數

n,q(1≤n

≤5×10

4,1≤

q≤103

)n,q(1≤n≤5×104,1≤q≤103)

, 表示有

nn間教室,

qq次詢問.接下來是

nn行, 每行3個整數

xi,yi,z

i(0≤

xi,y

i,zi

≤10)xi,yi,zi(0≤xi,yi,zi≤10)

,表示這間教室的座標.最後是

qq行,每行乙個整數

r(0≤r≤10

9)r(0≤r≤109)

,意思見描述.

output

對於每個詢問

rr輸出一行乙個整數,表示有多少對教室滿足題目所述的距離關係.

sample input

13 30 0 01 1 11 1 1123

sample output

113hint

對於樣例,1號教室和2號教室之間的距離為3, 1號和3號之間的距離為3, 2號和3號之間的距離為0

#include #include #include #include #include #include #include #include #include #include #include #includeusing  namespace std;

typedef long long ll;

#define pd(x) printf("%d\n",x)

const double eps=1e-6;

const double pi=acos(-1.0);

const int inf=1e9+10;

const int mod=1e9+7;

const int n=1e6+10;

int w[20][20][20];

ll dis[10000];

//char s[n];

struct node

node[n];

int main()

w[x][y][z]++;//每個點出現的次數

}// printf("%d\n",k);

for(int i=0; i}

while(m--)

for(int i=1; i<=r; i++) ans+=dis[i];

printf("%lld\n",ans);}}

return 0;

}我會說這是別人的**?

玲瓏oj1143 計算幾何你瞎暴力

1143 計算幾何你瞎暴力 time limit 5s memory limit 256mbyte submissions 1786solved 354 description 今天 hhhh考完了期末考試,他在教學樓裡閒逛,他看著教學樓裡一間間的教室,於是開始思考 如果從乙個座標為 x 1,y1 ...

計算幾何你瞎暴力 玲瓏oj C語言

problem description 今天h考完了期末考試,他在教學樓裡閒逛,他看著教學樓裡一間間的教室,於是開始思考 如果從乙個座標為 x1,y1,z1 的教室走到 x2,y2,z2 的距離為 x1 x2 y1 y2 z1 z2 那麼有多少對教室之間的距離是不超過r的呢?input 第一行是乙個...

loj517 計算幾何瞎暴力

在序列上維護4個操作 1.在序列的尾端新增x 2.輸出al ar的和 3.將所有數異或x 4.將序列從小到大排序 第一眼看上去是splay於是頭鐵硬剛了一發 後來發現splay沒法異或 然後看到了trie樹 學習了乙個 1.直接插到序列裡 2.考慮字首和 因為trie樹所管轄的下標區間是有序的,所以...