csp第二题典型特征就是很容易就能拿到70分,并且不需要考虑太多东西。
题目描述:
题解:
#include<iostream>
#include<map>
#include<cmath>
using namespace std;
int main() {
int n,N;
cin >> n >> N;
int r = N / (n + 1), error=0,ans=0;
map<int,int> mp;
//输入,将n件商品的信息存入哈希表
for(int i = 1; i <= n; i++) {
int temp;
cin >> temp;
mp[temp] = i;
}
//遍历求解
for(int j = 1; j < N; j++) {
if(mp.count(j)) ans++; //判断是否超过某商品的price
//ans是每次遍历时对应可买商品的件数
int fi = ans; //求fi
int gi = j/r; //求gi
error += abs(fi-gi); //绝对值累加
}
cout << error;
}