Codeforces Round #661 (Div. 3)
A
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int INF = 0x3f3f3f3f3f;
const int mod = 1e9 + 7;
const int maxn = 1e5 + 10;
int a[50];
void solve() {
int n;
cin>>n;
int flag=0;
for (int i = 0; i < n; ++i) {
cin>>a[i];
}
sort(a,a+n);
for (int j = 1; j < n; ++j) {
if (a[j]-a[j-1]>1) flag=1;
}
if (flag) cout<<"NO"<<endl;
else cout<<"YES"<<endl;
}
signed main() {
int _ = 1;
cin >> _;
while (_--) {
solve();
}
return 0;
}
B
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int INF = 0x3f3f3f3f3f;
const int mod = 1e9 + 7;
const int maxn = 1e5 + 10;
int a[50];
int b[50];
void solve() {
int n,am=INF,bm=INF;
ll ans=0;
cin>>n;
for (int i = 0; i < n; ++i) {
cin>>a[i];
if (am>a[i]) am=a[i];
}
for (int i = 0; i < n; ++i) {
cin >> b[i];
if (bm>b[i]) bm=b[i];
}
for (int i = 0; i < n; ++i) {
ans+=max(abs(a[i]-am),abs(b[i]-bm));
}
cout<<ans<<endl;
}
signed main() {
int _ = 1;
cin >> _;
while (_--) {
solve();
}
return 0;
}
C
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
int t;
cin>>t;
while (t--){
int n,i,a[55],maxx=0;;
for(cin>>n,i=1;i<=n;i++)cin>>a[i];
sort(a+1,a+1+n);
for (int j = 2; j <=100; ++j) {
int cnt=0,l=1,r=n;
while (l<r){
if(a[l]+a[r]==j){
cnt++;
maxx=max(cnt,maxx);
l++;r--;
} else if (a[l]+a[r]>j){
r--;
} else l++;
}
}
cout<<maxx<<endl;
}
return 0;
}