C++ PAT训练7

算法组-唐梓涵 2024-02-07 22:26:09

1026

#include <iostream>
#include<cmath>
using namespace std;
int main() {
	int num1, num2,h,m,s;
	cin >> num1 >> num2;
	int diff = num2 - num1;
	int data = round(diff / 100.0);
	h = data / 3600;
	m = data % 3600 / 60;
	s = data % 3600 % 60;
	printf("%02d:%02d:%02d", h, m,s);
}

1027

求数列前n项和

#include<iostream>
#include<cmath>
using namespace std;
int main() {
	int num;
	char sym;
	cin >> num >> sym;
	int n = 0;
	while (num > 2 * pow(n+1, 2) + 1) {//手动计算
		n++;
	}
	int count = n;
	for (int i = 0; i < 2 * n +1; i++) {
		string output(2*abs(count)+1, sym);
		string space(n-abs(count), ' ');
		output = space + output;
		cout << output<<endl;
		count--;
	}
	cout << num- 2 * pow(n + 1, 2) + 1<<endl;
}

1028

字符串比较更快捷

#include<iostream>
#include<string>
using namespace std;
int main() {
	int N;
	cin >> N;
	string max[2], min[2];
	max[1] = "0000/00/00";
	min[1] = "9999/99/99";
	int count=0;
	for (int i = 0; i < N; i++) {
		string name, birth;
		cin >> name >> birth;
		if ("2014/09/06" >= birth && birth >= "1814/09/06") {
			if (birth > max[1]) {
				max[0] = name;
				max[1] = birth;
			}
			if (birth < min[1]) {
				min[0] = name;
				min[1] = birth;
			}
			count++;
		}
	}
		cout << count << " " << min[0] << " " << max[0];
}

1029

字符串相减

#include<iostream>
#include<string>
using namespace std;

int main() {
    string a;
    string b;
    getline(cin, a);
    getline(cin, b);
    for (int i = 0; i < b.size(); i++) {
        for (size_t j = 0; j < a.size();) { 
            if (a[j] == b[i]) {
                a.erase(j, 1); 
            }
            else {
                j++; 
            }
        }
    }
    string result;
    for (size_t i = 0; i < a.size(); i++) { 
        a[i] = toupper(a[i]); 
        if (result.find(a[i]) == string::npos) { 
            result.push_back(a[i]);
        }
    }
    cout << result;
}

 

...全文
52 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
【为什么还需要学习C++?】 你是否接触很多语言,但从来没有了解过编程语言的本质?你是否想成为一名资深开发人员,想开发别人做不了的高性能程序?你是否经常想要窥探大型企业级开发工程的思路,但苦于没有基础只能望洋兴叹? 那么C++就是你个人能力提升,职业之路进阶的不二之选。【课程特色】 1.课程共19大章节,239课时内容,涵盖数据结构、函数、类、指针、标准库全部知识体系。2.带你从知识与思想的层面从0构建C++知识框架,分析大型项目实践思路,为你打下坚实的基础。3.李宁老师结合4大国外顶级C++著作的精华为大家推出的《征服C++11》课程。【学完后我将达到什么水平?】 1.对C++的各个知识能够熟练配置、开发、部署;2.吊打一切关于C++的笔试面试题;3.面向物联网的“嵌入式”和面向大型化的“分布式”开发,掌握职业钥匙,把握行业先机。【面向人群】 1.希望一站式快速入门的C++初学者; 2.希望快速学习 C++、掌握编程要义、修炼内功的开发者; 3.有志于挑战更高级的开发项目,成为资深开发的工程师。 【课程设计】 本课程包含3大模块基础篇本篇主要讲解c++的基础概念,包含数据类型、运算符等基本语法,数组、指针、字符串等基本词法,循环、函数、类等基本句法等。进阶篇本篇主要讲解编程中常用的一些技能,包含类的高级技术、类的继承、编译链接和命名空间等。提升篇:本篇可以帮助学员更加高效的进行c++开发,其中包含类型转换、文件操作、异常处理、代码重用等内容。
这是一本零基础就能读懂的算法书籍,读者不需要因为自己没有语言基础而畏惧。书籍的第2章便是一个C语言的入门教程,内容非常易懂,并且十分实用,阅读完这章就可以对本书需要的C语言基础有一个较好的掌握。本书已经覆盖了大部分基础经典算法,不仅可以作为考研机试和PAT的学习教材,对其他的一些算法考试(例如CCF的CSP考试)或者考研初试的数据结构科目的学习和理解也很有帮助,甚至仅仅想学习经典算法的读者也能从本书中学到许多知识,本书还有配套的《算法笔记上机训练实战指南》本书的作者是同样经历过考研机试和各类算法考试的专家型学长,知晓这类考试中的痛点,以及考生在学习算法时容易产生困惑的地方,因此可以把本书看作是学长为你奉献的满满的经验干货,这是最有价值的东西。本书的最个试印版本献给了浙大考研学子,并令当年的浙大考研机试平均分增加了十多分,收获了考生的大量好评。但作者并没有止步于此,经过了半年多时间的内容完善和补充之后,新的版本在新一年的考研机试中再次获得了考生的一致赞美。最后,在经过精心整理之后,书籍终于定稿,并编撰成书。我们知道,纸质书籍的一个弱点就在于不能像软件一样随时更新内容,但本书采用了与二维码相结合的方式,使得本书变为能够随时更新内容的书籍,读者也可以随时从二 维码中找到勘误。这种作者和读者能够相互沟通的方式让书籍变“活”了,也能够帮助提升读者对知识的理解。 本书内容包括:C/C++快速入门、入门模拟、算法初步、数学问题、C++标准模板库(STL)、数据结构专题(两章)、搜索专题、图算法专题、动态规划专题、字符串专题、专题扩展。书中每小节的末尾均印有二维码,用以实时更新或补充书籍的内容及发布本书的勘误。

264

社区成员

发帖
与我相关
我的任务
社区描述
一个供Leaders学习交流的地方
c++javapython 技术论坛(原bbs) 广东省·深圳市
社区管理员
  • 叫我胡萝北
  • Cheungzzzz
  • szu_gexu
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧