@@ -100,25 +100,6 @@ class Solution {
100
100
}
101
101
```
102
102
103
- ### ** TypeScript**
104
-
105
- ``` ts
106
- function countPoints(points : number [][], queries : number [][]): number [] {
107
- let ans = [];
108
- for (let [cx, cy, r] of queries ) {
109
- let square = r ** 2 ;
110
- let count = 0 ;
111
- for (let [px, py] of points ) {
112
- if ((px - cx ) ** 2 + (py - cy ) ** 2 <= square ) {
113
- ++ count ;
114
- }
115
- }
116
- ans .push (count );
117
- }
118
- return ans ;
119
- }
120
- ```
121
-
122
103
### ** C++**
123
104
124
105
``` cpp
@@ -162,6 +143,72 @@ func countPoints(points [][]int, queries [][]int) []int {
162
143
}
163
144
```
164
145
146
+ ### ** TypeScript**
147
+
148
+ ``` ts
149
+ function countPoints(points : number [][], queries : number [][]): number [] {
150
+ return queries .map (([cx , cy , r ]) => {
151
+ let res = 0 ;
152
+ for (const [px, py] of points ) {
153
+ if (Math .sqrt ((cx - px ) ** 2 + (cy - py ) ** 2 ) <= r ) {
154
+ res ++ ;
155
+ }
156
+ }
157
+ return res ;
158
+ });
159
+ }
160
+ ```
161
+
162
+ ### ** Rust**
163
+
164
+ ``` rust
165
+ impl Solution {
166
+ pub fn count_points (points : Vec <Vec <i32 >>, queries : Vec <Vec <i32 >>) -> Vec <i32 > {
167
+ queries
168
+ . iter ()
169
+ . map (| v | {
170
+ let cx = v [0 ];
171
+ let cy = v [1 ];
172
+ let r = v [2 ]. pow (2 );
173
+ let mut count = 0 ;
174
+ for p in points . iter () {
175
+ if ((p [0 ] - cx ). pow (2 ) + (p [1 ] - cy ). pow (2 )) <= r {
176
+ count += 1 ;
177
+ }
178
+ }
179
+ count
180
+ })
181
+ . collect ()
182
+ }
183
+ }
184
+ ```
185
+
186
+ ### ** C**
187
+
188
+ ``` c
189
+ /* *
190
+ * Note: The returned array must be malloced, assume caller calls free().
191
+ */
192
+ int *countPoints (int ** points, int pointsSize, int * pointsColSize, int ** queries, int queriesSize, int * queriesColSize,
193
+ int * returnSize) {
194
+ int * ans = malloc(sizeof(int) * queriesSize);
195
+ for (int i = 0; i < queriesSize; i++) {
196
+ int cx = queries[ i] [ 0 ] ;
197
+ int cy = queries[ i] [ 1 ] ;
198
+ int r = queries[ i] [ 2 ] ;
199
+ int count = 0;
200
+ for (int j = 0; j < pointsSize; j++) {
201
+ if (sqrt(pow(points[ j] [ 0 ] - cx, 2) + pow(points[ j] [ 1 ] - cy, 2)) <= r) {
202
+ count++;
203
+ }
204
+ }
205
+ ans[ i] = count;
206
+ }
207
+ * returnSize = queriesSize;
208
+ return ans;
209
+ }
210
+ ```
211
+
165
212
### **...**
166
213
167
214
```
0 commit comments