ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

吴凡的题库——快快编程1701+

2022-04-12 08:01:00  阅读:691  来源: 互联网

标签:1701 输出 int 输入输出 样例 格式 题库 输入 吴凡


  1. 非常棒
题目描述
请写一个程序,使用一句Very good界面,具体形状请参考下文中的输出样例。
注意:
一共3行,每一行都有一个换行,行之间不能有多余空行;
行末不应该出现多余空格。
输入输出格式
输入格式
无
输出格式
无
输入输出样例
输入样例#1:
无
输出样例#1:
**********
Very good!
**********

输入样例#2:

输出样例#2:

输入样例#3:

输出样例#3:

#include<iostream>
using namespace std;
int main(){
	cout<<"**********"<<endl;
	cout<<"Very good!"<<endl;
	cout<<"**********"<<endl;
	return 0;
}
  1. 美丽的等边三角形
题目描述
请写一个程序,输出一个等边三角形,具体形状请参考下文中的输出样例。
注意:
一共3行,每一行都有一个换行,行之间不能有多余空行。
行末不应该出现多余空格。
第3行开头没有空格。
同一行的*号之间可能需要空格。
输入输出格式
输入格式
无
输出格式
无
输入输出样例
输入样例#1:
无
输出样例#1:
  *
 * *
* * *
输入样例#2:
无
输出样例#2:
无
输入样例#3:
无
输出样例#3:
无
#include<iostream>
using namespace std;
int main(){
	cout<<"  *"<<endl;
	cout<<" * *"<<endl;
	cout<<"* * *"<<endl;
	return 0;
}
  1. 口算王子
题目描述
口算王子就是你,两个数字间的运算对你来说就是小菜一碟。已知一条计算式子,请你回答出计算结果。
输入输出格式
输入格式
输入文件calculation.in  输入一行包含一条算式,包含两个正整数a,b,均不超过10^9。这两个数中间有一个运算符号c,可能是加号+ ,或者减号-,或者乘号*。这一行内没有空格。
输出格式
输出文件calculation.out 输出一个整数。
输入输出样例
输入样例#1:
3+6
输出样例#1:
9
输入样例#2:
6*16
输出样例#2:
96
输入样例#3:
12345*54321
输出样例#3:
670592745
#include<bits/stdc++.h>
using namespace std;
int main(){
	freopen("calculation.in", "r", stdin);
	freopen("calculation.out", "w", stdout);
	long long a, b, ans;
	char c;
	cin>>a>>c>>b;
	if(c == '+')
	    ans=a+b;
	else if (c == '-')
	    ans=a-b;
	else
	    ans=a*b;
	cout<<ans<<endl;
	return 0;
}

  1. 闰年统计
题目描述
给定两个年份a,b ,请统计从a到b的年份里有几个闰年。
注意:统计时包含a,b两年本身在内。
输入输出格式
输入格式
输入文件leapyear.in 输入一行为正整数a,b,1<=a<=b<=9999。
输出格式
输出文件leapyear.out 输出一个整数。
输入输出样例
输入样例#1:
2000 2020
输出样例#1:
6
输入样例#2:
21 23
输出样例#2:
0
输入样例#3:

输出样例#3:

#include<bits/stdc++.h>
using namespace std;
bool isLeap(int y){
	return y%400==0||y%4==0&&y%100!=0;
}
int main(){
	freopen("leapyear.in", "r", stdin);
	freopen("leapyear.out", "w", stdout);
	int a,b,cnt;
	cin>>a>>b;
	for(int i = a;i <= b; i++){
		if(isLeap(i))
		    cnt++;
	}
	cout<<cnt<<endl;
	return 0;
}
  1. 回文数统计
题目描述
输入n个正整数,判断每个数是否为回文数。
输入输出格式
输入格式
输入文件palindrome.in  输入第一行为正整数n,n<=100。第二行为n个正整数,由空格隔开,均不超过10^18。
输出格式
输出文件palindrome.out 输出一行,共n个结果,每个结果为Yes或No,由空格隔开。
输入输出样例
输入样例#1:
5
2020 12321 567765 1991 2000000
输出样例#1:
No Yes Yes Yes No
输入样例#2:

输出样例#2:

输入样例#3:

输出样例#3:

#include<bits/stdc++.h>
using namespace std;
bool isHW(string s){
    int l=0;
    int r=s.size()-1;
    while(l<r){
        if(s[l]!=s[r])
            return 0;
        l++;
        r--;
    }
    return 1;
}
int main(){
    freopen("palindrome.in", "r", stdin);
    freopen("palindrome.out", "w", stdout);
    int n;
    cin>>n;
    for(int i = 0; i < n;++i){
    	string s;
    	cin>>s;
    	if(isHW(s))
    	    cout<<"Yes"<<" ";
    	else
    	    cout<<"No"<<" ";
	}
	return 0;
}
  1. 西佳佳偶像天团0
题目描述
西佳佳偶像天团共k人,编号1到k。第i人的颜值为x[i],团内颜值最低者成为团长,若有多人一样丑,就选编号最小的那人。求团长是几号,颜值是多 少。
输入输出格式
输入格式
输入文件idol.in 输入第一行为k,1<=k<=200000。第二行为k个正整数,每个数都不超过100000。
输出格式
输出文件idol.out 输出共2个数字,由空格隔开。
输入输出样例
输入样例#1:
10
4 3 2 1 2 3 4 5 4 6
输出样例#1:
4 1
输入样例#2:
5
7 6 9 7 6
输出样例#2:
2 6
输入样例#3:

输出样例#3:

#include<bits/stdc++.h>
using namespace std;
int main(){
	freopen("idol.in", "r", stdin);
	freopen("idol.out", "w", stdout);
	int n,idols[200001];
	cin>>n;
	for(int i = 0; i < n; i ++){
		cin>>idols[i];
	}
	cout<<min_element(idols, idols+n) - idols + 1<<" "<<*min_element(idols, idols + n);
	return 0;
}
  1. 长方形面积
题目描述
请计算下面长方形的面积,结果保留2位小数。
长方形的面积计算公式:面积=长*宽
第一行输出第一个长方形的面积:长3,宽2,注意结果要保留2位小数
第二行输出第二个长方形的面积:长4,宽2.6,注意结果要保留2位小数
第三行输出第三个长方形的面积:长5.4,宽5.6,注意结果要保留2位小数
输入输出格式
输入格式
无
输出格式
见题目描述
输入输出样例
输入样例#1:
无
输出样例#1:
无
输入样例#2:

输出样例#2:

输入样例#3:

输出样例#3:

#include<iostream>
#include<iomanip>
using namespace std;
int main(){
	cout<<fixed<<setprecision(2)<<3.0 * 2.0<<endl;
	cout<<fixed<<setprecision(2)<<4.0 * 2.6<<endl;
	cout<<fixed<<setprecision(2)<<5.4 * 5.6<<endl;
	return 0;
}
  1. 最高的山
题目描述
有n座山,编号从1到n,第i座山的高度为hi,请问其中最高的山是哪一座?
输入输出格式
输入格式
第一行一个正整数n,表示山的数量,n<=1000。
第二行n个正整数,中间由空格隔开。山的高度不超过10000。

输出格式
一个正整数,最高的山最早出现的编号。
输入输出样例
输入样例#1:
5
1 2 3 4 6

输出样例#1:
5
输入样例#2:
5
6 4 3 2 1

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

输出样例#3:

#include<iostream>
using namespace std;
int main(){
	int n,high[10005],num;
	cin>>n;
	for(int i = 0;i < n;i++){
		cin>>high[i];
	}
	num = 0;
	for(int i = 0;i < n;i++){
		if(high[i] > high[num])
			num = i;
	}
	cout<<num + 1;
	return 0;
}
  1. 口算王
题目描述
口算大王就是你,几个数字间的四则运算对你来说就是小菜一碟。已知一条计算式子,请你回答出计算结果。例如:
3-5=-2
1+2*3=7
8-2*2-1=3
输入输出格式
输入格式
100。
【数据规模】
10%数据, 全部数字都是1位数
10%数据, 恰有1个运算符号
10%数据, 恰有2个运算符号
100%数据, 最多有8个运算符号。
输出格式
输出文件calculator.out  输出一个整数,代表计算结果。
输入输出样例
输入样例#1:
3-5
输出样例#1:
-2
输入样例#2:
10-2*2-1
输出样例#2:
5
输入样例#3:
无
输出样例#3:
无
#include<bits/stdc++.h>
using namespace std;
stack<int> num;
stack<char> op;
void solve(){
	while(!op.empty()){
		char z=op.top();
		op.pop();
		int y=num.top();
		num.pop();
		int x=num.top();
		num.pop();
		if(z=='+')x+=y;
		else x-=y;
		num.push(x);
	}
}
int main(){
	freopen("calculator.in","r",stdin);
	freopen("calculator.out","w",stdout);
	int a,b;
	char c;
	cin>>a;
	num.push(a);
	while(cin>>c>>b){
		if(c=='*'){
			a=num.top();
			num.pop();
			a*=b;
			num.push(a);
		}
		else{
			solve();
			op.push(c);
			num.push(b);
		}
	}
	solve();
	cout<<num.top()<<endl;
	return 0;
}
  1. train-螺旋矩阵(同150,271)
  2. train-排座椅(同504)
  3. 高手集训
题目描述
太戈编程团队聚集了本市众多的编程高手。你作为总教练,要为高手们安排集训计划。课程表里有连续的n天可以供你选择,每天都有专 题课程。其中第i天的专题趣味程度为h[i]。假设你选择了其中连续的若干天,从第l天到第r天。那么,

训练效果 = h[l]*1 + h[l+1]*2 + ... + h[r]*(r-l+1)

随着训练的深入进行,每天的趣味程度会得到更多倍数的效果。



目前有m种训练方案,每种方案由起始时间和结束时间来描述。请对每种方案输出训练效果。

输入输出格式
输入格式
输入文件training.in
输入第一行为正整数n和m, 均不超过100000。第二行为n个正整数代表每天专题的趣味程度,均不超过100000。随后共m行,每行为两个正整数l,r, 保证1<=l<=r<=n。
输出格式
输出文件training.out
输出一行共m个整数,由空格隔开。
输入输出样例
输入样例#1:
3 2
5 6 7
1 3
2 3
输出样例#1:
38 20
【说明】5*1+6*2+7*3=38;6*1+7*2=20。
输入样例#2:
无
输出样例#2:
无
输入样例#3:
无
输出样例#3:
无
#include<bits/stdc++.h>
#define N 100003
#define int long long
using namespace std;
int h[N],s[N],g[N],n,m,l,r;
void input(){
	cin>>n>>m;
	for(int i=1;i<=n;i++)cin>>h[i];
}
void solveBF(){
	for(int i=1;i<=m;i++){
		cin>>l>>r;
		int ans=0;
		for(int j=l;j<=r;j++)ans+=h[j]*(j-l+1);
		cout<<ans<<" ";
	}
}
void solve(){
	for(int i=1;i<=n;i++)s[i]=s[i-1]+h[i];
	for(int i=1;i<=n;i++)g[i]=g[i-1]+h[i]*i;
	for(int i=1;i<=m;i++){
		cin>>l>>r;
		cout<<g[r]-g[l-1]-(s[r]-s[l-1])*(l-1)<<" ";
	}
}
signed main(){
	freopen("training.in","r",stdin);
	freopen("training.out","w",stdout);
	input();
	if(n<=1000&&m<=1000)solveBF();
	else solve();
	return 0;
}

标签:1701,输出,int,输入输出,样例,格式,题库,输入,吴凡
来源: https://www.cnblogs.com/WindowsRegedit/p/16125102.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有