欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

吴凡精选题库:快快编程第201-250题

最编程 2024-02-02 12:38:58
...
  1. 最大数
题目描述
输入8个整数,输出其中最大的数字。 注意:8个整数可能出现负数。
输入输出格式
输入格式
8个整数
输出格式
一个整数
#include<iostream>
using namespace std;
int main(){
	int n[1004],x,b;
	x = 8;
	for(int i = 0; i < x;i++){
		cin>>n[i];
	}
	b = n[0];
	for(int i = 0;i < x;i++){
		if(n[i] > b)
			b = n[i]; 
	}
	cout<<b;
	return 0;
}
  1. 三角旗1
题目描述
请写一个程序,输入是一个正整数n,输出一个边长为n的三角旗,高n行,宽n列,由@符合组成。请注 意,每行行末不能有多余空格。
输入输出格式
输入格式
输入文件triangle1.in  输入一个正整数n,不超过1000。
输出格式
输出文件triangle1.out  输出n行字符串。
输入输出样例
输入样例#1:
5
输出样例#1:
@@@@@
@@@@
@@@
@@
@

输入样例#2:
2
输出样例#2:
@@
@
输入样例#3:

输出样例#3:

#include<bits/stdc++.h>
using namespace std;
int main(){
	freopen("triangle1.in", "r", stdin);
	freopen("triangle1.out", "w", stdout);
	int n;
	cin>>n;
	for(int i = 1; i <= n;i ++){
		for(int j = 1;j <=n-i+1; j ++){
			cout<<"@";
		}
		cout<<endl;
	}
    return 0;
}
  1. 删除最大数
题目描述
请写一个程序,输入n个不同的整数,除了最大数字以外,依次输出剩余的n-1个整数。输入共两行:第一行为正整数n,第二行为n个整数。 其中n<=100,数字绝对值不超过100000。
输入输出格式
输入格式
第一行为正整数n,第二行为n个整数。
输出格式
n-1个整数,有空格隔开。
#include<iostream>
using namespace std;
int main(){
	int x[105],l,output[105],n;
    cin>>n;
	for(int i = 0;i < n;i++){
		cin>>x[i];
	}
	l = x[0];
	for(int i = 0;i< n;i++){
		if(x[i] > l){
			l = x[i];
		}
	}
	for(int i = 0;i < n;i++){
		if(x[i] != l){
			cout<<x[i]<<" ";
		}
	}
    return 0;
}
  1. 三七二一
题目描述
输入一个正整数n(1<=n<=10^18),如果该数字中3,7,2,1都出现了,就输出Yes,否则输出No
输入输出格式
输入格式
如题
输出格式
如题
输入输出样例
输入样例#1:
774321
输出样例#1:
Yes
输入样例#2:
123456
输出样例#2:
No
输入样例#3:

输出样例#3:

#include<iostream>
using namespace std;
typedef long long ll;
ll countk(ll x, ll k){
	ll cnt=0;
	do{
		if(x%10==k)		cnt++;
		x /= 10;
	}while(x);
	return cnt;
}
int main(){
	ll n;
	cin>>n;
	if(countk(n, 3)>0&&countk(n, 7)>0&&countk(n, 2)>0&&countk(n, 1)>0)
		cout<<"Yes";
	else
	    cout<<"No";
	return 0;
}
  1. 六六六
题目描述
输入一个正整数n(1<=n<=10^18),请用程序判断该 数字里出现几个6。有几个6就输出几个6,如果没有6那就输出Unhappy
输入输出格式
输入格式
如题
输出格式
如题
输入输出样例
输入样例#1:
123456123456123456
输出样例#1:
666
输入样例#2:
12345
输出样例#2:
Unhappy
输入样例#3:

输出样例#3:

#include<bits/stdc++.h>
using namespace std;
int main(){
	bool flag=false;
	string s;
	cin>>s;
	for(int i=0;i<s.size();i++)
		if(s[i] == '6'){
			cout<<"6";
			flag = true;
		}
	if(not flag)	cout<<"Unhappy";
	return 0;
}
  1. 求位数
题目描述
对于一个非负整数n,请问n包含几个数码?
输入输出格式
输入格式
输入一个非负整数n, 0<=n<=10^18。
输出格式
一个正整数。
输入输出样例
输入样例#1:
1234567890
输出样例#1:
10
输入样例#2:
123454321
输出样例#2:
9
输入样例#3:
0
输出样例#3:
1
#include<iostream>
#include<string>
using namespace std;
int main(){
	string s;
	cin>>s;
	cout<<s.length();
	return 0;
}
  1. 小野猫
题目描述
如果你家小区这个月有x只野猫,一个月后,就会出现额外x/3只野猫;下个月又会发生类似的情况。假设一开始有10只猫。一个月后有13只,两个月后有17只,三个月后有22只,… 输入n,请问n个月后你们小区共有几只野猫? 注意:x除以3不是整数时只取 整数部分。
输入输出格式
输入格式
一个正整数n,n<=60
输出格式
一个正整数
输入输出样例
输入样例#1:
4
输出样例#1:
29
解释说明:
过1个月后,共有10+10/3=10+3=13只野猫
过2个月后,共有13+13/3=13+4=17只野猫
过3个月后,共有17+17/3=17+5=22只野猫
过4个月后,共有22+22/3=22+7=29只野猫
输入样例#2:
1
输出样例#2:
13
解释说明:过1个月后,共有10+10/3=10+3=13只野 猫
输入样例#3:

输出样例#3:

#include<iostream>
using namespace std;
int main(){
	int x,n;
	cin>>n;
	x = 10;
	for(int i = 1;i<=n;i++){
		x += x / 3;
	}
	cout<<x;
    return 0;
}
  1. 存钱买房
题目描述
小明打算全款买下一套新房,最近他看中了一套售 价n万元的房子,小明有存款x万,每个月他能额外 存下m万元。请问要过多少个月小明的存款够买这套房?
输入输出格式
输入格式
输入共一行包含n,x,m三个正整数,空格隔开,均不超过10000。
输出格式
输出一个整数代表需要几个月。
输入输出样例
输入样例#1:
100 50 3

输出样例#1:
17
输入样例#2:
100 200 10
输出样例#2:
0
输入样例#3:

输出样例#3:

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n, x, m, result;
	cin>>n>>x>>m;
	result = max(n - x, 0);
	result = ceil(result * 1.0 / m);
	cout<<result<<endl;
	return 0;
}
  1. 收入支出查询
题目描述
小明他以每天为单位把每一天的总收入或支出都记录下来,共n天,正数代表收入,负数代表支出。有一天他老婆突然对他进行查账,提 出共m个查询问出共m个查询问题,每个问题都是关心某两天之间(从第i天开始到第j天结束)的存款变了多少
输入输出格式
输入格式
输入第一行为n和m(1<=n,m<=10000),第二行为n个整数代表当天的收入或支出,第三行为2*m个正整数,每两个数代表一次查询的起始日期和结束日期

输出格式
输出一行共m个数,代表每一个查询结果。数字由空格隔开。
输入输出样例
输入样例#1:
5 2
100 -200 60 10 -10
1 3 4 5
输出样例#1:
-40 0
输入样例#2:
无
输出样例#2:
无
输入样例#3:
无
输出样例#3:
无
#include<iostream>
using namespace std;
int main(){
	int n,m,d[10009],t;
	cin>>n>>m;
	for(int i=1;i<=n;i++) cin>>d[i];
	for(int i=1;i<=m;i++){
		int x,y;
		cin>>x>>y;
		t=0;
		for(int j=x;j<=y;j++) t+=d[j];
		cout<<t<<" ";
	}
	return 0;
}
  1. 集体照
题目描述
有2*n个人身高各不相同,排成两排拍集体照,每排从左到右看必须是从矮到高排列,并且第二排比对 应的第一排的人要高。输入n(1<=n<=30),输出拍照的排列方式有多少种。 说明:如果四个人身高分别为1.5米,1.6米,1.7米,1.8米,那么共有两种 排列: 第一种: 1.5 1.6 1.7 1.8 第二种: 1.5 1.7 1.6 1.8
输入输出格式
输入格式
输入文件photo.in  输入n(1<=n<=30)
输出格式
输出文件photo.out 输出拍照的排列方式有多少种 。
输入输出样例
输入样例#1:
6
输出样例#1:
132
输入样例#2:

输出样例#2:

输入样例#3:

输出样例#3:

#include<bits/stdc++.h>
using namespace std;
int main(){
	freopen("photo.in", "r", stdin);
	freopen("photo.out", "w", stdout);
	int level;
	long long k[100] = {1};
	cin>>level;
	for(int i=1; i<= level; i++){
		k[i] = k[i-1]*(4*i-2)/(i+1);
	}
	cout<<k[level];
	return 0;
}

原文地址:https://www.cnblogs.com/WindowsRegedit/p/16123776.html