#include<bits/stdc++.h>
using namespace std;
inline int read()
{
int ret=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
if(ch=='-') w=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return w*ret;
}
int main()
{
string a,b;
cin>>a>>b;
cout<<b<<a<<endl;
return 0;
}
#include<bits/stdc++.h>
using namespace std;
inline int read()
{
int ret=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
if(ch=='-') w=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return w*ret;
}
long long n,a,b;
int main()
{
cin>>a>>b>>n;
if(a>=n) cout<<a-n<<" "<<b<<endl;
else cout<<0<<" "<<max((long long)0,b-n+a)<<endl;
return 0;
}
#include<bits/stdc++.h>
using namespace std;
inline int read()
{
int ret=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
if(ch=='-') w=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return w*ret;
}
int n;
bool check(int x)
{
for(int i=2;i*i<=x;i++)
if(x%i==0) return 0;
return 1;
}
int main()
{
cin>>n;
for(;;n++)
if(check(n))
{
cout<<n<<endl;
return 0;
}
return 0;
}
#include<bits/stdc++.h>
using namespace std;
inline int read()
{
int ret=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
if(ch=='-') w=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return w*ret;
}
int n,k;
int r,s,p;
char ch[100010];
int a[100010];
int f[100010];
int ans=0;
inline int cal(int i)
{
if(a[i]==1) return r;
else if(a[i]==2) return s;
else return p;
}
int main()
{
scanf("%d %d",&n,&k);
scanf("%d%d%d",&r,&s,&p);
scanf("%s",ch+1);
for(int i=1;i<=n;i++)
if(ch[i]=='r') a[i]=3;
else if(ch[i]=='s') a[i]=1;
else a[i]=2;
for(int i=1;i<=n;i++)
if(i-k<=0) f[i]=a[i],ans+=cal(i);
else if(f[i-k]==a[i]) f[i]=0;
else f[i]=a[i],ans+=cal(i);
cout<<ans<<endl;
return 0;
}
#include<bits/stdc++.h>
using namespace std;
inline long long read()
{
long long ret=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
if(ch=='-') w=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return w*ret;
}
inline long long read_l()
{
long long ret=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
if(ch=='-') w=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return w*ret;
}
long long n;
long long m;
long long a[100010];
long long s[100010];
long long ans=0;
bool check(long long x)
{
long long tot=0;
for(long long i=1;i<=n;i++) tot+=lower_bound(a+1,a+n+1,x-a[i])-a-1;
if(n*n-tot<m) return 1;
else return 0;
}
int main()
{
n=read(),m=read_l();
for(long long i=1;i<=n;i++) a[i]=read_l();
sort(a+1,a+n+1);
for(long long i=1;i<=n;i++) s[i]=s[i-1]+a[i];
long long l=1,r=999999999;
while(l+1<r)
{
long long mid=(l+r)>>1;
if(check(mid)) r=mid;
else l=mid;
}
for(long long i=1;i<=n;i++)
{
long long x=lower_bound(a+1,a+n+1,l-a[i])-a;
ans+=s[n]-s[x-1];
ans+=a[i]*(n-x+1);
}
long long tot=0;
for(long long i=1;i<=n;i++) tot+=lower_bound(a+1,a+n+1,l-a[i])-a-1;
if(n*n-tot>m) ans-=(n*n-tot-m)*l;
cout<<ans<<endl;
return 0;
}
原文:https://www.cnblogs.com/xiaoh105/p/12121668.html