2013年蓝桥杯省赛A组填空题 1.排它平方数 知识点:暴力枚举

1.排它平方数 - 蓝桥云课 (lanqiao.cn)

这是我写的,跑不出来结果: 思想是把x和x*x全部拆分,放到vector1,vector2里,然后遍历vector1,vector2,如果vector1和vectorr2的每一位都不同就输出

js 复制代码
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
vector<LL>t1,t2;
int flag=0;
int main()
{
	for(int i=100000;i<1000000;i++)
	{
		LL sum=i*i;
			
	     while(sum)
		{
			t1.push_back(sum%10);
			sum/=10;
		}
				
		while(i)
		{
			t2.push_back(i%10);
			i/=10;
		}
		

			for(int j=0;j<t2.size();j++)
			{	   
			 for(int i=0;i<t1.size();i++)
		   {
				if(t1[i]!=t2[j]&&(t2[0]!=t2[1]&&t2[1]!=t2[3]&&t2[3]!=t2[4]&&t2[4]!=t2[5]&&t2[5]))flag=1;
			}
		 } 
		if(flag)cout<<i;
	}
	
	
	
	return 0;
}

这是别人写的: 2013年c++A组题2_哔哩哔哩_bilibili

js 复制代码
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;

//void is2(LL x,string &str)
//{
//	stringstream ss;
//	ss<<x;
//	ss>>str; 
//}
bool check(LL a,LL b)
{
	string str_a=to_string(a);
	string str_b=to_string(b); 


 for(int i=0;i<str_a.size();i++)
 {
 	if(str_b.find(str_a[i])!=string::npos)
 	return false;
 }
return true;
}
int main()
{
	for(int i=1;i<10;i++)
	{
		for(int j=0;j<10;j++)
		{
			if(i!=j)
			for(int k=0;k<10;k++)
			{   if(k!=i&&k!=j)
				for(int l=0;l<10;l++)
				{
					if(l!=i&&l!=j&&l!=k)
					for(int m=0;m<10;m++)
					{
						if(m!=i&&m!=j&&m!=k&&m!=l)
						for(int n=0;n<10;n++)
						{
							if(n!=i&&n!=j&&n!=k&&n!=l&&n!=m)
							{
								LL x=i*100000+j*10000+k*1000+l*100+m*10+n;
								
								if(check(x,x*x)) 
								cout<<x<<" "<<x*x<<endl; 
							}
						}
					}
				}
			}
		 } 
	}
	
	return 0;
}
相关推荐
地平线开发者7 小时前
J6B vio scenario sample
算法
BothSavage19 小时前
Trae远程开发中DeepSeek自定义模型4054错误的排查与修复
算法
小林ixn19 小时前
从暴力到KMP:一道题彻底搞懂字符串匹配的前世今生
算法
烬羽20 小时前
字符串算法入门:从反转字符串到回文判断,面试不再慌
算法·面试
先吃饱再说1 天前
判断回文字符串,从一行代码到双指针优化
算法
黄敬峰2 天前
深入理解算法核心:从递归思想、数组扁平化到快速排序
算法
得物技术2 天前
从狂野代码到按目标生产:得物推荐 AI Harness 的工程化实践|AICon 演讲整理
人工智能·算法·架构
AI小老六2 天前
SkillOpt 架构拆解:把 Skill 文本当参数,用执行轨迹训练 Agent
后端·算法·ai编程