brute force implementation math *1500

Please click on ads to support us..

C++ Code:

#include<bits/stdc++.h>
using namespace std;

#define forn(i, n) for (int i = 0; i < int(n); i++)
#define ll long long
#define E endl
#define pb push_back
#define all(x) begin(x) , end(x)  // For vectors of pair
#define py cout<<"YES\n"
#define pn cout<<"NO\n"
int n;
int operations(vector<int> &v){
    int cd = v[1] - v[0] , op = 0;
    for(int i = 2 ; i < n; i++){
        int t = v[0] + cd * i;
        if(abs(t - v[i]) > 1)
            return n + 1;
        op += abs(v[i] - t); 
    }
    return op;
}
int main(){
    ios::sync_with_stdio(false);
    cin.tie(NULL);
 
    cin >> n;
    vector<int> v(n);
    forn(i , n) cin >> v[i];

    if(n <= 2){
        cout<<0<<E;
        return 0;
    }

    int minOp = n + 1;

    for(int i = -1 ; i <= 1 ; i++){
        for(int j = -1 ; j <= 1 ; j++){
            vector<int> cpy = v;
            cpy[0] += i;
            cpy[1] += j;
            int oper = operations(cpy);
            oper += i != 0;
            oper += j != 0;
            minOp = min(oper, minOp);            
        }
    }
    if(minOp <= n)
        cout<<minOp<<E;
    else
        cout<<-1<<E;
return 0;
}


Comments

Submit
0 Comments
More Questions

838D - Airplane Arrangements
148B - Escape
847G - University Classes
1110A - Parity
1215B - The Number of Products
604C - Alternative Thinking
1204C - Anna Svyatoslav and Maps
322A - Ciel and Dancing
1689B - Mystic Permutation
1711B - Party
1702D - Not a Cheap String
1714F - Build a Tree and That Is It
1703F - Yet Another Problem About Pairs Satisfying an Inequality
610A - Pasha and Stick
1200A - Hotelier
1091A - New Year and the Christmas Ornament
1352B - Same Parity Summands
1102A - Integer Sequence Dividing
630B - Moore's Law
1004A - Sonya and Hotels
1680B - Robots
1690A - Print a Pedestal (Codeforces logo)
1295A - Display The Number
1077A - Frog Jumping
1714G - Path Prefixes
1369C - RationalLee
289B - Polo the Penguin and Matrix
1716A - 2-3 Moves
1670B - Dorms War
1716B - Permutation Chain