152622025-02-17 18:37:32TakacsAndrasLegtöbbször szomszédok (75 pont)cpp17Részben helyes 73/7528ms800 KiB
#include <bits/stdc++.h>
using namespace std;
int main() {
    int n,m; cin >> n >> m;
    m--;
    vector<int> a(n);
    for (int &x : a) cin >> x;
    int mn = 1e5, mni = -1, mnii = 0, mncntout = 0, mncnt = 0, mx = 1e5, mxi = -1, mxcntout = 0, mxcnt = 0, mxii = 0;
    for (int i = 0; i < n; i++) {
        if (a[i] > a[m] && a[i]-a[m] < mx) {
            mx = a[i]-a[m];
            mxcnt = 0;
            mxii = i;
        }
        else if (a[i] < a[m] && a[m]-a[i] < mn) {
            mn = a[m]-a[i];
            mncnt = 0;
            mnii = i;
        }
        if (m <= i) {
            mncnt++;
            mxcnt++;
            if (mxcnt > mxcntout) {
                mxcntout = mxcnt;
                mxi = mxii;
            }
            if (mncnt > mncntout) {
                mncntout = mncnt;
                mni = mnii;
            }
        }
    }
    if (mxi == -1) cout << "-1\n";
    else cout << mxi+1 << ' ' << mxcntout << '\n';
    if (mni == -1) cout << "-1\n";
    else cout << mni+1 << ' ' << mncntout;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base73/75
1Elfogadva0/01ms316 KiB
2Elfogadva0/025ms564 KiB
3Részben helyes1/21ms316 KiB
4Részben helyes1/21ms316 KiB
5Elfogadva4/41ms316 KiB
6Elfogadva4/41ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva4/41ms316 KiB
9Elfogadva4/43ms316 KiB
10Elfogadva4/44ms388 KiB
11Elfogadva4/43ms316 KiB
12Elfogadva4/46ms472 KiB
13Elfogadva4/46ms352 KiB
14Elfogadva4/46ms468 KiB
15Elfogadva4/46ms468 KiB
16Elfogadva4/48ms520 KiB
17Elfogadva4/412ms756 KiB
18Elfogadva4/414ms604 KiB
19Elfogadva4/427ms564 KiB
20Elfogadva4/427ms564 KiB
21Elfogadva4/427ms796 KiB
22Elfogadva4/428ms800 KiB