重刷蓝桥杯官网基础题(四)

特殊回文数


#include<bits/stdc++.h>
using namespace std;

int n;

int f5(int x)
{
	int a[5],sum=0;
	for(int i=0;i<5;i++)
	{
		a[i]=x%10;
		sum+=a[i];
		x/=10;
	}
	if(a[0]==a[4]&&a[1]==a[3])
	return sum;
	else return 0;
}

int f6(int x)
{
	int a[6],sum=0;
	for(int i=0;i<6;i++)
	{
		a[i]=x%10;
		sum+=a[i];
		x/=10;
	}
	if(a[0]==a[5]&&a[1]==a[4]&&a[2]==a[3])
	return sum;
	else return 0;
}

int main()
{
	cin>>n;
	for(int i=10001;i<100000;i++)
		if(f5(i)==n)
		cout<<i<<endl;
	for(int i=100001;i<1000000;i++)
		if(f6(i)==n)
		cout<<i<<endl; 
	return 0;
}

回文数


#include<bits/stdc++.h>
using namespace std;

int n;

int f4(int x)
{
	int a[4];
	for(int i=0; i<5; i++)
	{
		a[i]=x%10;
		x/=10;
	}
	if(a[0]==a[3]&&a[1]==a[2])
		return 1;
	else return 0;
}

int main()
{
	for(int i=1001; i<10000; i++)
		if(f4(i))
		cout<<i<<endl;
	return 0;
}

特殊的数字

#include<bits/stdc++.h>
using namespace std;

int n;

int f(int x)
{
	int a,b,c;
	a=x/100;
	b=x/10%10;
	c=x%10;
	if(a*a*a+b*b*b+c*c*c==x) 
	return 1;
	else return 0; 
}

int main()
{
	for(int i=100; i<1000; i++)
		if(f(i))
		cout<<i<<endl;
	return 0;
}

杨辉三角形

#include<bits/stdc++.h>
using namespace std;

const int N=35;
int n;
int f[N][N];

int main()
{
	cin>>n;
	for(int i=0;i<34;i++)
		f[i][0]=1;
	for(int i=1;i<34;i++)
		for(int j=1;j<i+1;j++)
			f[i][j]=f[i-1][j]+f[i-1][j-1];
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<i+1;j++)
			cout<<f[i][j]<<' ';
		cout<<endl;
	}
	return 0;
}

查找整数

#include<bits/stdc++.h>
using namespace std;

const int N=1001;
int n;
int f[N];
int ans=-1;

int main()
{
	int a;
	cin>>n;
	for(int i=0;i<n;i++)
		cin>>f[i];
	cin>>a;
	for(int i=0;i<n;i++)
		if(f[i]==a)
		{
			ans=i+1;
			break;
		}
	cout<<ans<<endl;
	return 0;
}

数列特征

#include<bits/stdc++.h>
using namespace std;

const int N=10001;
int n;
int f[N];

int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
		cin>>f[i];
	int max=f[0],min=f[0],sum=f[0];
	for(int i=1;i<n;i++)
	{
		if(f[i]>max)
			max=f[i];
		if(f[i]<min)
			min=f[i];
		sum+=f[i];
	}
	cout<<max<<endl;
	cout<<min<<endl;
	cout<<sum<<endl;
	return 0;
}

字母图形

#include<bits/stdc++.h>
using namespace std;

const int N=10001;
int n,m;
char s[26];

int main()
{
	cin>>n>>m;
	for(int i=0;i<26;i++)
		s[i]=i+'A';
	int a=0,b=0;
	for(int i=0;i<n;i++)
	{
		b=a;
		for(int j=0;j<m;j++)
		{
			cout<<s[abs(b)];
			b++;
		}
		cout<<endl;
		a--;
	}
	return 0;
}

01字串

#include<bits/stdc++.h>
using namespace std;

//const int N=10001;
//int n,m;
string s[8];
string b[4];

int main()
{
	s[0]="000";
	s[1]="001";
	s[2]="010";
	s[3]="011";
	s[4]="100";
	s[5]="101";
	s[6]="110";
	s[7]="111";
	b[0]="00";
	b[1]="01";
	b[2]="10";
	b[3]="11";
	for(int i=0;i<4;i++)
		for(int j=0;j<8;j++)
			cout<<b[i]<<s[j]<<endl;
	return 0;
}
posted @ 2021-11-15 16:04  longwind7  阅读(33)  评论(0编辑  收藏  举报