【PTA天梯赛】L1-001 L1-002 L1-003 L-004 L-005 L-006 L-007 L-008 L-009 L1-010 c++

news2024/11/20 21:24:05

  • 🚀 个人简介:CSDN「博客新星」TOP 10 , C/C++ 领域新星创作者
  • 💟 作    者:锡兰_CC ❣️
  • 📝 专    栏:狠狠的刷题!!!
  • 🌈 若有帮助,还请关注➕点赞➕收藏,不行的话我再努努力💪💪💪

文章目录

  • L1-001 Hello World
  • L1-002 打印沙漏
  • L1-003 个位数统计
  • L1-004 计算摄氏温度
  • L1-005 考试座位号
  • L1-006 连续因子
  • L1-007 念数字
  • L1-008 求整数段和
  • L1-009 N个数求和
  • L1-010 比较大小

L1-001 Hello World

这道超级简单的题目没有任何输入。

你只需要在一行中输出著名短句“Hello World!”就可以了。
输入样例:

输出样例:

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

int main() {
	cout << "Hello World!";
	return 0;
} 

L1-002 打印沙漏

本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印

*****
 ***
  *
 ***
*****

所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。

给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。
输入格式:

输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。
输出格式:

首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。
输入样例:

19 *

输出样例:

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

int n;
char c;

int main() {
	cin >> n >> c;
	int sum = 1,l = 0;
	while(sum <= n) {
		l++;
		sum += 2 * (2 * (l + 1) - 1);
	}
	for(int i = 0; i < l;i++) {
		for(int j = 0; j < i; j++) {
			cout << " ";
		}
		for(int j = 0; j < 2 * (l - i) - 1; j++) {
			cout << c;
		}
		cout << endl;
	}
	for(int i = 2; i <= l; i++) {
		for(int j = 0; j < l - i; j++) {
			cout << " "; 
		}
		for(int j = 0; j < 2 * i - 1; j++) {
			cout << c;
		}
		cout << endl;
	}
	cout << n - (sum - 2 * (2 * (l + 1) - 1));
	return 0;
}

L1-003 个位数统计

给定一个 k 位整数 N=dk−1​10k−1+⋯+d1​101+d0​ (0≤di​≤9, i=0,⋯,k−1, dk−1​>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。
输入格式:

每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。
输出格式:

对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。
输入样例:

100311

输出样例:

0:2
1:3
3:1

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

int n[10];
string s;

int main() {
	cin >> s;
	for(int i = 0; i < s.size(); i++) {
		n[s[i]-'0']++;
	}
	for(int i = 0; i < 10; i++) {
		if(n[i] != 0) {
			cout << i << ":" << n[i] << endl;
		}
	}
	return 0;
}

L1-004 计算摄氏温度

给定一个华氏温度F,本题要求编写程序,计算对应的摄氏温度C。计算公式:C=5×(F−32)/9。题目保证输入与输出均在整型范围内。
输入格式:

输入在一行中给出一个华氏温度。
输出格式:

在一行中按照格式“Celsius = C”输出对应的摄氏温度C的整数值。
输入样例:

150

输出样例:

Celsius = 65

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

int f;

int main() {
	cin >> f;
	cout << "Celsius = " << 5 * (f - 32) / 9;
	return 0;
}

L1-005 考试座位号

每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。
输入格式:

输入第一行给出一个正整数 N(≤1000),随后 N 行,每行给出一个考生的信息:准考证号 试机座位号 考试座位号。其中准考证号由 16 位数字组成,座位从 1 到 N 编号。输入保证每个人的准考证号都不同,并且任何时候都不会把两个人分配到同一个座位上。

考生信息之后,给出一个正整数 M(≤N),随后一行中给出 M 个待查询的试机座位号码,以空格分隔。
输出格式:

对应每个需要查询的试机座位号码,在一行中输出对应考生的准考证号和考试座位号码,中间用 1 个空格分隔。
输入样例:

4
3310120150912233 2 4
3310120150912119 4 1
3310120150912126 1 3
3310120150912002 3 2
2
3 4

输出样例:

3310120150912002 2
3310120150912119 1

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

struct student {
	string a;
	int b, c;
}stu[1005];

int n,m;

int main() {
	cin >> n;
	for(int i = 0; i < n; i++) {
		cin >> stu[i].a >> stu[i].b >> stu[i].c;
	}
	cin >> m;
	for(int i = 0; i < m; i++) {
		int num;
		cin >> num;
		for(int j = 0; j < n; j++) {
			if(stu[j].b == num) {
				cout << stu[j].a << " " << stu[j].c << endl;
			}
		}
	}
	return 0;
}

L1-006 连续因子

一个正整数 N 的因子中可能存在若干连续的数字。例如 630 可以分解为 3×5×6×7,其中 5、6、7 就是 3 个连续的数字。给定任一正整数 N,要求编写程序求出最长连续因子的个数,并输出最小的连续因子序列。
输入格式:

输入在一行中给出一个正整数 N(1<N<231)。
输出格式:

首先在第 1 行输出最长连续因子的个数;然后在第 2 行中按 因子1因子2……*因子k 的格式输出最小的连续因子序列,其中因子按递增顺序输出,1 不算在内。
输入样例:

630

输出样例:

3
567

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

int n,a[10000], c, sum, ans, len, maxl; 

int main() {
	cin >> n;
	for(int i = 2; i <= sqrt(n) + 1; i++) {
		if(n % i == 0) {
			a[c++] = i; 
		}
	}
	if(c == 0) {
		cout << "1" << endl << n;
	} else if(c == 1) {
		cout << "1" << endl << a[0];
	} else {
		for(int i = 0; i < c - 1; i++) {
			sum = a[i];
			len = 1;
			for(int j = i ; j < c - 1; j++) {
				if(a[j + 1] - a[j] == 1 && n % (sum * a[j + 1]) == 0) {
					sum *= a[j + 1];
					len++;
				} else {
					break;
				}
			}
			if(len > maxl) {
				maxl = len;
				ans = i;
			}
		}
		cout << maxl << endl << a[ans];
		for(int i = ans + 1; i < ans + maxl; i++) {
			cout << "*" << a[i];
		}
	}
	return 0;
}

L1-007 念数字

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu

输入格式:

输入在一行中给出一个整数,如:1234。

提示:整数包括负数、零和正数。
输出格式:

在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如
yi er san si。
输入样例:

-600

输出样例:

fu liu ling ling

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

string num[10] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};
string s;


int main() {	
	cin >> s;
	int i = 0, len = s.size();

	if(s[0] == '-') {
		cout << "fu ";
		i++;
	} 
	
	for( ; i < len; i++) {
		cout << num[s[i] - '0'];
		if(i != len - 1) {
			cout << " ";
		}
	}
	return 0;
}

L1-008 求整数段和

给定两个整数A和B,输出从A到B的所有整数以及这些数的和。
输入格式:

输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。
输出格式:

首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。
输入样例:

-3 8

输出样例:

-3 -2 -1 0 1
2 3 4 5 6
7 8
Sum = 30

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

int a, b, sum, cnt = 1;

int main() {	
	cin >> a >> b;
	for(int i = a; i <= b; i++, cnt++) {
		printf("%5d",i);
		if(cnt == 5 || i == b) {
			cnt = 0;
			cout << endl;
		}
		sum += i;
	}
	cout << "Sum = " << sum;
	return 0;
}

L1-009 N个数求和

本题的要求很简单,就是求N个数字的和。麻烦的是,这些数字是以有理数分子/分母的形式给出的,你输出的和也必须是有理数的形式。
输入格式:

输入第一行给出一个正整数N(≤100)。随后一行按格式a1/b1 a2/b2 …给出N个有理数。题目保证所有分子和分母都在长整型范围内。另外,负数的符号一定出现在分子前面。
输出格式:

输出上述数字和的最简形式 —— 即将结果写成整数部分 分数部分,其中分数部分写成分子/分母,要求分子小于分母,且它们没有公因子。如果结果的整数部分为0,则只输出分数部分。
输入样例1:

5
2/5 4/15 1/30 -2/60 8/3

输出样例1:

3 1/3

输入样例2:

2
4/3 2/3

输出样例2:

2

输入样例3:

3
1/3 -1/6 1/8

输出样例3:

7/24

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

int n, ansu, ansd;

int main() {
	cin >> n;
	int a, b, c;
	scanf("%d/%d",&a,&b);
	n--;
	c = __gcd(a,b);
	a /= c;
	b /= c;
	ansu = a;
	ansd = b;
	while(n--) {
		scanf("%d/%d",&a,&b);
		int x, y;
		x = ansu * b + ansd * a;
		y = ansd * b;
		c = __gcd(x,y);
		x /= c;
		y /= c;
		ansu = x;
		ansd = y;
	}
	if(ansu % ansd == 0) {
		cout << ansu / ansd;
	} else if(ansu && ansu / ansd == 0) {
		cout << ansu << "/" << ansd;
	} else {
		cout << ansu / ansd << " " << ansu%ansd << "/" << ansd;
	}
	return 0;
}

L1-010 比较大小

本题要求将输入的任意3个整数从小到大输出。
输入格式:

输入在一行中给出3个整数,其间以空格分隔。
输出格式:

在一行中将3个整数从小到大输出,其间以“->”相连。
输入样例:

4 2 8

输出样例:

2->4->8

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

int a[3];

int main() {
	cin >> a[0] >> a[1] >> a[2];
	sort(a,a+3);
	cout << a[0] << "->" << a[1] << "->" << a[2];
	return 0;
}

其他:

更多专栏订阅:

  • 👍 【开卷数据结构】
  • 💛 【备战蓝桥,冲击省一】
  • 💕   从零开始的 c++ 之旅
  • 💖 【OpenCV • c++】计算机视觉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/418541.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Ubuntu 22.04 上配置 FTP 服务器步骤】

Ubuntu 22.04 上配置 FTP 服务器步骤 1.安装 vsftpd 软件包&#xff1a; sudo apt-get update sudo apt-get install vsftpd 2.查看vsftpd版本和状态&#xff0c;确认vsftpd安装成功和正常启动 2.修改 vsftpd 配置文件&#xff1a; sudo nano /etc/vsftpd.conf 3.在配置文件中…

Ethercat概念学习

Ethercat技术调研 背景 最近我们要基于Ethercat技术进行开发&#xff0c;首先需要了解其基本原理&#xff0c;github上看到了有相关实现&#xff0c;一起来看看吧。 Ethercat技术 速度更快 传输速率:2*100 Mbaud 全双工 高速性、高实时性 微秒级 像火车一样有帧头、帧尾&a…

如何对农田温室气体进行有效模拟?

农业是甲烷&#xff08;CH4&#xff09;、氧化亚氮&#xff08;N2O&#xff09;和二氧化碳&#xff08;CO2&#xff09;等温室气体的主要排放源&#xff0c;占全产业排放的13.5%。农田温室气体又以施肥产生的N2O和稻田生产产生的CH4为主&#xff0c;如何对农田温室气体进行有效…

计算机组成原理(四)输入/输出系统

一、概述 1.1前言 I/O设备是计算机组成原理之硬件最后的一部分。输入输出系统是计算机系统当中种类最多、功能最多、结构最复杂、构成也最多样的系统。在现代计算机系统当中&#xff0c;外部设备的总成本可以占到计算机总成本的80%以上。可以说&#xff0c;没有这些丰富多彩的外…

「Vue面试题」Vue项目中有封装过axios吗?主要是封装哪方面的?

一、axios是什么 axios 是一个轻量的 HTTP客户端 基于 XMLHttpRequest 服务来执行 HTTP 请求&#xff0c;支持丰富的配置&#xff0c;支持 Promise&#xff0c;支持浏览器端和 Node.js 端。自Vue2.0起&#xff0c;尤大宣布取消对 vue-resource 的官方推荐&#xff0c;转而推荐…

(原创)Flutter基础入门:实现各种Shape效果

前言 上一篇博客讲了Flutter的装饰器Decoration Flutter基础入门&#xff1a;装饰器Decoration 装饰器就可以帮我们实现各种Shape效果 但上篇文章并没有讲如何实现具体的Shape效果 那么具体要怎么做呢&#xff1f;这篇文章就主要讲这块 在Fluter中实现Shape效果时&#xff0c;…

Servlet(一)

目录 1.什么是Servlet 2.servlet程序 2.1 创建项目 2.2 引入依赖 2.3 创建目录 2.4 编写代码 2.5 打包程序 2.6 部署程序 2.7 验证程序 3.更简单的部署方法 3.1 安装 3.2配置 4.访问出错怎么办 4.1 404 4.2 405 4.3 500 4.4 空白页面 4.5 无法访问此页面 5.se…

Gin web框架初步认识

Goland使用及gin框架下载引入 第一次使用Goland时需要配置GOROOT、GOPATH、Go Modules 配置完成后进入面板&#xff0c;右键选择Go Modules文件&#xff0c;或者在go工作区通过命令go mod init [name]创建go mod项目。 创建完的项目一般都有go.mod文件和go.sum&#xff0c;前者…

Mysql【安装教程】

Mysql安装教程 1.安装教程 可以去官网下载这个版本的&#xff1a;mysql-installer-community-8.0.31.0 双击点开&#xff0c;选择自定义&#xff1a; 选择主键&#xff1a;左边选择之后就点蓝色按钮添加到右边去&#xff0c;next&#xff1a; 如果出现这个页面&#xff0c…

机器视觉检测系统的基本流程你知道吗

工业制造业种&#xff0c;首先我们便需要了解其基本流程&#xff0c;作为工厂信息科人员&#xff0c;我们不能只依靠视觉服务商的巡检驻检来解决问题&#xff0c;为了产线的效率提升&#xff0c;我们更多的应该培养产线技术人员&#xff0c;出现问题便可以最快速度解决问题&…

领跑新能源车市“下半场”,这家企业凭什么?

中国新能源汽车市场行至下半场&#xff0c;将围绕技术升级、产品竞争力比拼、整合淘汰等趋势快速发展。 4月7日&#xff0c;在北京水立方发布的奇瑞新能源之夜上&#xff0c;奇瑞汽车全面展示新战略、新技术、新品牌和新产品&#xff0c;宣布将以全新的技术生态加速向全球科技…

光伏电池片技术N型迭代,机器视觉检测赋能完成产量“弯道超车”

电池片是光伏发电的核心部件&#xff0c;其技术路线和工艺水平直接影响光伏组件的发电效率和使用寿命。随着硅料、硅片技术逐渐接近其升级迭代空间的瓶颈&#xff0c;电池片环节正处于技术变革期&#xff0c;是光伏产业链中迭代最快的部分。P型中PERC电池片是现阶段市场的主流产…

已知原根多项式和寄存器初始值时求LFSR的简单例子

线性反馈移位寄存器&#xff08;LFSR&#xff09;是一种用于生成伪随机数序列的简单结构。在这里&#xff0c;我们有一个四项原根多项式 p(x)1x0x21102p(x) 1 x 0x^2 110_2p(x)1x0x21102​ 和初始值 S0100S_0 100S0​100。我们将使用 LFSR 动作过程来生成一个伪随机序列。…

2023美赛春季赛_赛题原文及翻译

目录 Problem Y: Understanding Used Sailboat Prices Y题翻译&#xff1a; Problem Z: The Future of the Olympics Z题翻译&#xff1a; Problem Y: Understanding Used Sailboat Prices ​Like many luxury goods, sailboats vary in value as they age and as market c…

看这一篇就够了!!!Java最全面试手册(性能优化+微服务架构+并发编程+开源框架)

Java面试手册 一、性能优化面试专栏 1.1、 tomcat性能优化整理 ​ 1.2、JVM性能优化整理 1.3、Mysql性能优化整理 二、微服务架构面试专栏 2.1、SpringCloud面试整理 2.2、SpringBoot面试整理 2.3、Dubbo面试整理 三、并发编程高级面试专栏 四、开源框架面试题专栏 4.1、Sp…

[Data structure]稀疏数组

⭐作者介绍&#xff1a;大二本科网络工程专业在读&#xff0c;持续学习Java&#xff0c;努力输出优质文章 ⭐作者主页&#xff1a;逐梦苍穹 ⭐所属专栏&#xff1a;数据结构。数据结构专栏主要是在讲解原理的基础上拿Java实现&#xff0c;有时候有C/C代码。 ⭐如果觉得文章写的…

清肠化湿颗粒通过激活NLRP6信号和调节Th17/Treg平衡来改善DSS诱导的结肠炎

百趣代谢组学分享-文章标题&#xff1a;Qing-Chang-Hua-Shi granule ameliorates DSS-induced colitis by activating NLRP6 signaling and regulating Th17/Treg balance 代谢组学分享-发表期刊&#xff1a;Phytomedicine 代谢组学分享-影响因子&#xff1a;6.656 代谢组学…

python 对数函数

在 Python中&#xff0c;除了对数函数&#xff0c;还有其他的一些函数&#xff0c;例如&#xff1a; 这是一个在 python中用来计算两个整数之间的关系的函数。如果两个整数的值不同&#xff0c;则它们之间的关系是&#xff1a; 其中aa^2bb^2cc^2。下面是计算两个整数之间的关系…

微信小程序开发(学习记录1.0)

首先&#xff0c;把遇到的问题贴出来&#xff0c;主要是这个解决问题的思路&#xff0c;供大家参考。 现在的问题是将下面的导航栏做出来&#xff0c;但是在自己做的时候 遇到的问题 在app.json文件中输入tarBar&#xff0c;就会生成模板代码&#xff0c;默认会生成一个list的模…

【面试题】calc()计算函数的作用和理解

前言 最近项目中遇到calc()方法不生效问题&#xff0c;本着究其所以然的想法&#xff0c;彻底查了一下calc的方法及使用&#xff0c;还有为什么项目中使用不生效的问题&#xff0c;最后总结出此文&#xff0c;解决方法放在结尾了 cale()是什么 calc是英文单词calculate的缩写…