AtCoder Beginner Contest 203(Sponsored by Panasonic)
A - Chinchirorin
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
#define inf 0x7fffffff
//#define ll long long
#define int long long
//#define double long double
#define re register int
#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define P pair < int , int >
#define mk make_pair
using namespace std;
const int mod=1e9+7;
const int M=1e8+5;
const int N=5e5+5;//?????????? 4e8
map < int , int > mp;
int ans;
void solve()
{
int a[10];
cin>>a[1]>>a[2]>>a[3];
sort(a+1,a+3+1);
if(a[2]==a[1]) cout<<a[3];
else
{
if(a[2]==a[3]) cout<<a[1];
else cout<<0;
}
}
signed main()
{
int T=1;
// cin>>T;
for(int index=1;index<=T;index++)
{
solve();
// puts("");
}
return 0;
}
/*
4 5
1 2
1 3
1 4
2 3
3 4
*/
B - AtCoder Condominium
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
#define inf 0x7fffffff
//#define ll long long
#define int long long
//#define double long double
#define re register int
#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define P pair < int , int >
#define mk make_pair
using namespace std;
const int mod=1e9+7;
const int M=1e8+5;
const int N=5e5+5;//?????????? 4e8
int n,k;
void solve()
{
cin>>n>>k;
cout<<100*n*k*(n+1)/2+n*k*(k+1)/2;
}
signed main()
{
int T=1;
// cin>>T;
for(int index=1;index<=T;index++)
{
solve();
// puts("");
}
return 0;
}
/*
4 5
1 2
1 3
1 4
2 3
3 4
*/
C - Friends and Travel costs
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
#define inf 0x7fffffff
//#define ll long long
#define int long long
//#define double long double
#define re register int
#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define P pair < int , int >
#define mk make_pair
using namespace std;
const int mod=1e9+7;
const int M=1e8+5;
const int N=5e5+5;//?????????? 4e8
int n,k;
int pos,last,ans;
struct node
{
int a,b;
}e[N];
bool cmp(node i,node j)
{
return i.a<j.a;
}
void solve()
{
cin>>n>>k;
for(re i=1;i<=n;i++) scanf("%lld%lld",&e[i].a,&e[i].b);
sort(e+1,e+n+1,cmp);
for(re i=1;i<=n;i++)
{
pos=e[i].a-last;
if(k<pos)
{
ans+=k;
k=0;
break;
}
k-=pos;
k+=e[i].b;
ans=e[i].a;
last=e[i].a;
}
if(k) ans+=k;
cout<<ans;
}
signed main()
{
int T=1;
// cin>>T;
for(int index=1;index<=T;index++)
{
solve();
// puts("");
}
return 0;
}
/*
4 5
1 2
1 3
1 4
2 3
3 4
*/
D - Pond
玄学二分+玄学前缀和
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
#define inf 0x7fffffff
//#define ll long long
#define int long long
//#define double long double
#define re register int
#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define P pair < int , int >
#define mk make_pair
using namespace std;
const int mod=1e9+7;
const int M=1e8+5;
const int N=5e5+5;//?????????? 4e8
int a[1005][1005],c[1005][1005];
int b[N],t,pos;
int n,k;
int ans=1e18;
void solve()
{
cin>>n>>k;
for(re i=1;i<=n;i++) for(re j=1;j<=n;j++) scanf("%lld",&a[i][j]);
int l=0,r=1e9+5,mid;
while(l<=r)
{
mid=(l+r)>>1;
for(re i=1;i<=n;i++) for(re j=1;j<=n;j++) c[i][j]=(mid<=a[i][j]);
int flag=0;
for(re i=1;i<=n;i++) for(re j=1;j<=n;j++) c[i][j]+=c[i-1][j]+c[i][j-1]-c[i-1][j-1];
for(re i=k;i<=n;i++) for(re j=k;j<=n;j++) if(c[i][j]-c[i-k][j]-c[i][j-k]+c[i-k][j-k]<=k*k/2) flag=1;
if(flag) r=mid-1;
else l=mid+1,ans=mid;
}
cout<<ans<<endl;
}
signed main()
{
int T=1;
// cin>>T;
for(int index=1;index<=T;index++)
{
solve();
// puts("");
}
return 0;
}
/*
4 5
1 2
1 3
1 4
2 3
3 4
*/