题解:P17134 [KOI 2026 #1] 邻居
yangziteng2728 · · 题解
题目大意
KOI村一条道路上有
对于
-
两人同校,且距离
|i-j|\le K_1 ; -
两人不同校,且距离
|i-j|\le K_2 。
求每名学生的邻居数量。
算法思路
依次枚举每个学生
若
如果
如果
枚举完成后输出该学生答案。
代码
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,K1,K2;
cin >> n >> K1 >> K2;
int a[3005];
for(int i = 1;i <= n;i++){
cin >> a[i];
}
for(int i = 1;i <= n;i++){
int cnt = 0;
for(int j = 1;j <= n;j++){
if(i == j) continue;
if(a[i] == a[j]){
if(abs(i - j) <= K1) cnt++;
}else{
if(abs(i - j) <= K2) cnt++;
}
}
cout << cnt << " ";
}
return 0;
}