#include<iostream> #include<cmath> usingnamespace std; constint INF = 0x3f3f3f3f; int a[200010]; intmain(){ int t; cin>>t; int n,m,k; while(t--){ int ans = INF; cin>>n>>m>>k; for(int i = 1;i<=n;i++){ scanf("%d",&a[i]); } int l = m - 2 * sqrt(n) - 5; l = max(l,1); int r = m + 2 * sqrt(n) + 5; r = min(n,r); for(int c = l;c<=r;c++){ for(int i = 1;i<=c;i++){ int num = a[i]; int cnt = abs(m - c); for(int j = i;j <= n;j+=c){ if(a[j] != k){ cnt++; } } ans = min(ans,cnt); } } cout<<ans<<endl; } return0; }
#include<bits/stdc++.h> usingnamespace std; typedeflonglong LL; constint mod = 998244353; unordered_map<int, int> mp; intqp(int a, int k)//快速幂 quick pow { int res = 1; while (k) { if (k & 1) res = (LL) res * a % mod; a = (LL) a * a % mod; k >>= 1; } return res; } intdfs(int l, int r) { int len = r - l + 1, mid = l + r >> 1; if (len == 1) return1; if (mp[len] != 0) return mp[len]; int &val = mp[len]; if (mid - l + 1 == 1) val = dfs(l, mid); else val = dfs(l, mid) + mid - l + 1; val %= mod; val = (val + dfs(mid + 1, r)) % mod; val = (val + r - mid) % mod; return val; } voidsolve() { int n; cin >> n; cout << (LL)dfs(1, n) * qp(n, mod - 2) % mod << "\n"; } intmain() { ios::sync_with_stdio(false); cin.tie(nullptr); int T; cin >> T; while (T -- ) solve(); return0; }