1007 cats 的 k-xor


分析:

1.是对x 取余 得到最后一位
标准答案代码:
#include<bits/stdc++.h>
using namespace std;
long long kxor(long long a,long long b,long long k){
	long long ans=0,w=1,c;
	while(a>0||b>0)
	{
		c=(a+b)%k;
		a/=k;
		b/=k;
		ans+=c*w;
		w*=k;
	}
	return ans;
}
int main(){
	ios::sync_with_stdio(false),cin.tie(0);
	int T;
	long long a,b,c,ans,i;
	for(cin>>T;T>0;T--)
	{
		cin>>a>>b>>c;
		if(a+b<c)
		{
			cout<<"0\n";
			continue;
		}
		if(a+b==c)
		{
			cout<<"-1\n";
			continue;
		}
		ans=0;
		for(i=2;i<=45000;i++)
		{
			if(kxor(a,b,i)==c)ans++;
		}
		if(a+b-c>45000&&kxor(a,b,a+b-c)==c)ans++;
		cout<<ans<<'\n';
	}
	return 0;
}1012 cats 的电脑中毒

分析:

标准答案代码:
#include<bits/stdc++.h>
using namespace std;
string s1,s2,s3;
int c[3];
int main(){
	ios::sync_with_stdio(false),cin.tie(0);
	int T,n,i,ans;
	for(cin>>T;T>0;T--)
	{
		cin>>n>>s1>>s2>>s3;
		for(i=0;i<3;i++)c[i]=0;
		ans=0;
		for(i=0;i<n;i++)
		{
			if(s1[i]!=s2[i]&&s1[i]!=s3[i])c[0]++;
			else if(s2[i]!=s1[i]&&s2[i]!=s3[i])c[1]++;
			else if(s3[i]!=s1[i]&&s3[i]!=s2[i])c[2]++;
			else ans++;
		}
		sort(c,c+3);
		cout<<ans+c[0]+c[1]+(c[2]-c[1])/2<<'\n';
	}
	return 0;
}















![BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin](https://i-blog.csdnimg.cn/direct/ed45c0efd0ac40c68b2c1bc7b6d90ebc.png)




