社区讨论

?

学术版参与者 5已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@lo2vfuny
此快照首次捕获于
2023/10/23 20:26
2 年前
此快照最后确认于
2023/10/23 20:26
2 年前
查看原帖
已知两个整数 a 和 b ,每次允许选取其中一个数字,将这个数字加上它的个位数。
不限操作次数,请问能否将两个数字变为相等?
对于 30% 的数据,1≤t≤10 。
对于 100% 的数据,1≤t≤100000,0≤a,b≤109 。
CPP
#include<bits/stdc++.h>
using namespace std;
long long t;
int a[114514191],b[114514191],c[114514191],d[114514191];
int main(){
  	cin>>t;
  	for(int i=1;i<=t;i++){
  		cin>>a[i]>>b[i];
  		c[i]=a[i]%10;
		d[i]=b[i]%10;
	}
	for(int i=1;i<=10000000000;i++){
		a[i]+=c[i];
		b[i]+=d[i];
		if(a[i]==b[i]){
			cout<<"Yes"<<endl;
			break;
		}
	}	
	for(int i=1;i<=t;i++){
  		if(a[i]!=b[i])
			cout<<"No"<<endl;
	}
  	return 0;
}
暴力

回复

4 条回复,欢迎继续交流。

正在加载回复...