結果
問題 | No.1120 Strange Teacher |
ユーザー |
![]() |
提出日時 | 2020-07-22 22:00:51 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,472 bytes |
コンパイル時間 | 1,735 ms |
コンパイル使用メモリ | 169,632 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-06-22 17:49:03 |
合計ジャッジ時間 | 2,671 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 26 WA * 1 |
ソースコード
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; using P = pair<ll,ll>; const ll mod = 1e9+7; #define ALL(x) (x).begin(),(x).end() #define REP(i,n) for(ll (i)=0;(i)<(n);(i)++) #define REPS(i,n) for(ll (i)=1;(i)<=(n);(i)++) #define RREP(i,n) for(ll (i)=(n-1);(i)>=0;(i)--) #define RREPS(i,n) for(ll (i)=(n);(i)>0;(i)--) #define pb push_back #define mp make_pair #define F first #define S second #define UNIQUE(v) v.erase(unique(ALL(v)),v.end()); template<class T> inline void chmin(T& a, T b){ if (a > b){ a = b; } } template<class T> inline void chmax(T& a, T b){ if (a < b){ a = b; } } signed main(){ cin.tie(0); ios::sync_with_stdio(false); cout<<fixed<<setprecision(12); ll N; cin >> N; ll sum = 0; bool ok = 1; vector<ll> A(N); vector<ll> B(N); REP(i,N)cin >> A[i]; REP(i,N)cin >> B[i]; REP(i,N)sum += A[i] - B[i]; ll count = 0; ll ans = 0; if(N == 2){ if(A[0] + A[1] != B[0] + B[1]){ ok = 0; }else{ ans = abs(A[0] - B[0]); } cout << (ok ? ans : -1) << "\n"; }else{ if(sum % (N-2) != 0){ ok = 0; }else{ count = sum / (N-2); } REP(i,N){ if(A[i] -B[i] - count > 0)ok = 0; } if(count < 0)ok = 0; cout << (ok ? count : -1) << "\n"; if(count == 2)cout << -1 << "\n";; } }