From 6b548332bfc6469756526002971c422f43f86d0a Mon Sep 17 00:00:00 2001 From: omagdy7 Date: Mon, 24 Jul 2023 13:11:33 +0300 Subject: Removed some empty *.cpp files and Solved some new problems --- contests/Round#849(Div4)/E/main.cpp | 124 ------------------------------------ 1 file changed, 124 deletions(-) delete mode 100755 contests/Round#849(Div4)/E/main.cpp (limited to 'contests/Round#849(Div4)/E/main.cpp') diff --git a/contests/Round#849(Div4)/E/main.cpp b/contests/Round#849(Div4)/E/main.cpp deleted file mode 100755 index d1605ce..0000000 --- a/contests/Round#849(Div4)/E/main.cpp +++ /dev/null @@ -1,124 +0,0 @@ -#include -using namespace std; - -using ll = long long; -using pi = pair; -using vpi = vector; -using vi = vector; -using vll = vector; -using mpii = map; -using mpll = map; -using db = long double; - -#define pb push_back -#define all(x) (x).begin(), (x).end() -#define rall(x) (x).rbegin(), (x).rend() -#define lb lower_bound -#define ub upper_bound - -const int MOD = (int)1e9 + 7; -const db PI = acos((db)-1); -const int dx[4]{1, 0, -1, 0}; -const int dy[4]{0, 1, 0, -1}; - -//pretty printing -template -void printm(const map &mp) { - cerr << "{" << endl; - for (auto p : mp) { - cerr << " { " << p.first << " : " << p.second << " }\n"; - } - cerr << "}" << endl; -} -template -void printv(const vector &v) { - cerr << "["; - for (int i = 0; i < v.size(); i++) { - if (i == v.size() - 1) { - cerr << v[i]; - } else { - cerr << v[i] << ", "; - } - } - cerr << "]\n"; -} - -template -void printvv(const vector> &v) { - cerr << "[\n"; - for (auto &vec : v) { - cout << " "; - printv(vec); - } - cerr << "]\n"; -} -void print() { - cerr << "\n"; -} - -template -void print(T val, TS... vals) { - cerr << val << " "; - print(vals...); -} - - -/* stuff you should look for: - --------------------------- - * special cases (n=1?) - * int overflow, array bounds - * do smth instead of nothing and stay organized - * WRITE STUFF DOWN - * DON'T GET STUCK ON ONE APPROACH - */ - -/* - * Ideally we want them all to be positive - * If we can't get them all to be positive we want to flip the largest numbers in absloute - * The 0 can be a joker because flipping its sign is meaningless anyways -*/ - -void solve() { - int n; - cin >> n; - vll v(n); - for (auto &x : v) cin >> x; - int neg = 0; - for (auto x : v) { - neg += (x < 0); - } - ll sum = 0; - if (neg % 2 == 0) { - for (auto x : v) { - if (x < 0) { - sum += -x; - } else { - sum += x; - } - } - } else { - for (auto &x : v) { - if (x < 0) { - x = -x; - } - } - for (auto x : v) { - sum += x; - } - sum -= *min_element(all(v)) * 2; - } - cout << sum << '\n'; - -} - -int main () { - ios_base::sync_with_stdio(false); - cin.tie(NULL); - int tt; - cin >> tt; - while(tt--) { - solve(); - } -} - - -- cgit v1.2.3