Codeforces Round #582 (Div. 3)
A
# include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int MAXN=200;
LL x[MAXN];
int main()
{
int n;
LL minn=1e18,o=0,q=0;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%lld",&x[i]);
if(x[i]%2==0) o++;
else q++;
}
minn=min(o,q);
printf("%lld\n",minn);
return 0;
}
B
# include <bits/stdc++.h>
using namespace std;
const int MAXN=2e5+100;
int a[MAXN];
int main()
{
int t;
scanf("%d",&t);
while(t--){
int n;
int cnt=0;
int minn=0;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
}
minn=a[n];
for(int i=n-1;i>=1;i--){
if(a[i]>minn){
cnt++;
}
minn=min(minn,a[i]);
}
printf("%d\n",cnt);
}
return 0;
}
C
# include <bits/stdc++.h>
using namespace std;
typedef long long LL;
LL a[15];
int main()
{
int q;
scanf("%d",&q);
while(q--){
LL n,m;
LL cnt=0;
LL sum=0;
scanf("%lld %lld",&n,&m);
if(n<m){
sum=0;
}else{
for(LL i=1;i<=10;i++){
a[i]=m*i%10;
cnt+=a[i];
D
# include <bits/stdc++.h>
using namespace std;
const int MAXN=2e5+100;
int a[MAXN];
int m[MAXN];
int mp[MAXN];
int dp[MAXN][20];
int main()
{
int n,k;
int maxx=0,minn=1e9;
memset(dp,0,sizeof(dp));
scanf("%d %d",&n,&k);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
m[a[i]]++;
mp[a[i]]=1;
maxx=max(maxx,m[a[i]]);
dp[a[i]][0]=m[a[i]];
}
if(maxx>=k) minn=0;
sort(a+1,a+n+1);
for(int i=1;i<=n;i++){
int c=0;
int aa=a[i];
while(aa){
c++;
aa=aa/2;
mp[aa]=1;
dp[aa][c]++;
}
}
for(int i=0;i<=2e5;i++){
if(mp[i]){
int c=0,cnt=0;