[TIOJ]1768. P-蹺蹺板 (Seesaw)

題目連結:http://tioj.ck.tp.edu.tw/problems/1768

這題不難,但是我超垃圾沒有想出來。
待補做法。
#include <bits/stdc++.h>
#define jizz cin.tie(0);ios_base::sync_with_stdio(0);
#define lld long long
#define F first
#define S second
#define MOD 1000000007
using namespace std;
typedef pair<int,int> Pair;
lld a[20000005];
int n;
lld a1,a2;
signed main(){jizz
    cin >>n;
    for(int i = 1 ; i <= n ; i++)cin >> a[i],a1 += a[i],a2 += i*a[i];
    if(a2%a1 == 0)return cout <<0 << ' '<<(a2/a1)-1 <<endl,0;
    for(int i = 1 ; i < n/2 ; i++){
        a2 -= i*a[i];
        a2 -= (n-i+1)*a[n-i+1];
        a2 += (n-i+1)*a[i];
        a2 += i*a[n-i+1];
        if(a2%a1 == 0)return cout <<i << ' '<<(a2/a1)-1 <<endl,0;
    }
    return 0;
}


留言

這個網誌中的熱門文章

[TIOJ]1617. [Interactive] 中位數

[TIOJ]1337. 隕石

[TIOJ]1994. 冰塊線