![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
小技巧
jianglx3
跨考汪一以贯之!
展开
-
LeetCode707设计链表
C++ - 结构体构造函数使用总结 - _starsky - 博客园 (cnblogs.com)结构体的构造函数创建及使用原创 2022-01-25 22:51:49 · 817 阅读 · 1 评论 -
PAT1019_A组_General Palindromic Number(进制大于10)
当进制大于10时,处理方法:1.ABCDE...2.按两位数正常储存,如果需要详细操作,可以不使用string,而是vector<string>,这样将每个位对应数字单独出来//思路:先将进制转化,将数字储存在字符串中,字符串倒置,判断字符串是否相等#include<iostream>using namespace std;#include<algorithm>#include<string>#include<vector>原创 2021-12-17 00:32:21 · 71 阅读 · 0 评论 -
vector容器使用push_back赋值后 数据仍为0
vector的push_back无法赋值?-CSDN社区问题来源: 浙大数据结构2021秋 02-线性结构3 Reversing Linked List (25 分)本题同PAT1025 但1025未使用vector容器错误原因:vector<struct Node> v(n); for (int i = add; i != -1; i = Node[i].next) { v[a++] = Node[i]; //v.push_back(Node[i]); //这种.原创 2021-12-03 15:19:46 · 2421 阅读 · 0 评论 -
判断两个条件矛盾关系
问题来源:PAT1089//假定真话假话的人,然后遍历判断//太强了 乘积作真假判定//该题核心: 判断两个条件是否矛盾的算法//https://blog.csdn.net/liuchuo/article/details/82560831?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163782084516780271517348%2522%252C%2522scm%2522%253A%252220140713.1301023原创 2021-11-25 14:53:11 · 347 阅读 · 0 评论 -
目标位置字符截取
问题来源: PAT1091使用length()相减及substr函数,从目标位置取字符串int mul = n * k * k;string smul = to_string(mul), sk = to_string(k);string smulend = smul.substr(smul.length() - sk.length());if (smulend == sk) {printf("%d %d\n", n, mul);flag = 1;break;}...原创 2021-11-24 21:42:56 · 48 阅读 · 0 评论 -
unsigned int - int情况
问题来源:PAT1094问题错误表现: 无法正确跳出循环,即延长了循环次数,从而造成结果错误//测试点4://num是string类型的,而num.size()返回的是unsigned int类型的数,//当L < K时,数学上差值为负数,但是无符号的num.size() - K得到的是极大的正数,所以会继续循环造成错误#include<iostream>#include<string>#include<cmath>using na...原创 2021-11-23 20:52:21 · 360 阅读 · 0 评论 -
map与vector排序
问题来源: PAT1095 B组map有key和value两个可作比较的数值map中的元素是pair类型对象,每个pair类型由关键字—值(key-value)组成:关键字起到索引的作用,值则表示与索引相关联的数据。字典是一个很好的map例子,可以将单词作为关键字,将单词释义作为值。map使用的底层数据结构为一颗红黑树(红黑树是一颗高度平衡二叉排序树),因为map的各种操作接口,RB-Tree也都提供了,所以几乎所有的map操作行为,都只是转调用了RB-Tree的操作行为而已。TB-Tree中的原创 2021-11-23 15:06:15 · 1144 阅读 · 0 评论 -
c++ string 字符大小写的转换
问题来源: PAT1085(8条消息) c++ string 字符大小写的转换_Li_zhonglei的博客-CSDN博客_c++ string字符串大小写转换原创 2021-11-22 19:31:40 · 610 阅读 · 0 评论 -
判断单个字符是否为字母或者数字
两个有趣的函数isalpha(输入字符是否为字母)和isdigit(输入字符是否为数字)原创 2021-11-21 22:27:02 · 131 阅读 · 0 评论 -
结构体与模板与数组的选择
问题来源: PAT1080自己有空再写一遍吧,转自(7条消息) PAT 1080 MOOC期中成绩(25分)用STL+C++详细解读最后一个测试点(博&人&)_博&人&的博客-CSDN博客#include<iostream>#include<string>#include<vector>#include<map>#include<algorithm>using namespace std;//一原创 2021-11-21 20:28:02 · 346 阅读 · 0 评论 -
四舍五入两种写法
//四舍五入的两种写法:cout << round(sum) << endl;cout << int(sum + 0.5) << endl;其中,round函数头文件为#include<cmath>问题来源: PAT1077原创 2021-11-21 00:00:01 · 374 阅读 · 0 评论 -
string类型的加法问题
问题来源: PAT1074#include<iostream>using namespace std;#include<cmath>int main() { string a1 = "123"; string a2 = "123"; for (int i = 0; i < 2; i++) { a1 = a1 + '0'; a2 = '0' + a2; } cout << "(0在后) a1 = " << a1 <<原创 2021-11-19 22:30:06 · 568 阅读 · 0 评论 -
map容器在数组中元素判断的应用
PAT1068PAT1069两道题是两种不同的应用1069提供了string作为下标,int类型为判断值的可能原创 2021-11-18 22:19:12 · 454 阅读 · 0 评论 -
求三个数最小公倍数
//求三个数最小公倍数#include<iostream>using namespace std;//辗转相除法,先求最大公约数,在让两数之积除以ret,得最小公倍数int gcd(int a, int b) { //不需要判断大小,如果使用递归计算 //if-else写法 /*if (a % b == 0) { return b; } else { gcd(b, a % b); }*/ //三目运算符写法: return !b ? a : gcd(b, a %.原创 2021-11-16 16:08:37 · 1360 阅读 · 0 评论 -
关于int与string类型运行速度(PAT C++)
问题来源: PAT1059本题先使用的string类型进行判断和循环,测试点1,2超时#include<iostream>using namespace std;#include<cmath>#include<string>bool Is_Sushu(int num) { if (num == 1) { return false; } for (int i = 2; i * i <= num; i++) { if (num % i =原创 2021-11-15 19:15:16 · 475 阅读 · 0 评论 -
输入格式内含有其他字符
例题:PAT1058比如输入(2 a b c)对于2 使用 scanf("(%d",&num);即使2是第一个输入对于后面的字符,如果输入格式没有主动输入符空格,那么会将空格读入&c中故需要加上一个主动输入的空格,或者用getchar()吃掉多余空格显然,对于本题,主动输入的c语言更方便scanf(" %c",&c);主动输入符可以看作空格,区别是空格可以不被输入,但主动输入法必须被输入...原创 2021-11-15 17:12:50 · 406 阅读 · 0 评论 -
整形转换字符串/reserve倒置/count查找字符个数/大小写转换_PAT1056_B组
(1条消息) 【C++】统计string里面出现的字符的个数(使用count函数)_DZT2727的博客-CSDN博客(1条消息) C语言实现大小写转换的三种方法_Zidane_2014的专栏-CSDN博客_大小写转换c语言倒置函数reverse的用法 - Ritchie丶 - 博客园 (cnblogs.com)(1条消息) C++ 整形和字符串之间的转换_踏雪博客-CSDN博客_c++整型转字符串stoi用来转化string的,atoi转化的是char[]c++的atoi和stoi一些原创 2021-11-14 21:45:23 · 94 阅读 · 0 评论 -
处理类型不同但关系对应的两组数(两组数按不同要求排序)
如题,两组数关系不可打乱,且要达到排序要求问题来源:PAT1055 B组 集体照如何让身高与姓名联系起来,排序后也不会切断二者联系?显然,不能使用数组原因如下:首先,如果将二者统一在一个数组内,string与int会矛盾其次,如果用两个数组分别处理,排序完一个后,另一个再使用for循环与排序完成的数组进行对应,那么在处理有相同数据(即本例的姓名相同情况)时,会很麻烦可以使用结构体来处理并通过sort函数的自定义函数来将姓名和身高同时比较一个cmp函数,可以同时声明身高与姓原创 2021-11-14 16:26:14 · 442 阅读 · 0 评论 -
PAT1049_乙级 数列的片段和
两个知识点: long double问题 与 c++中保留小数点后位数 #include<iomanip>暴力解测试点2和3会超时#include<iostream>#include <iomanip>using namespace std;int main() { int n = 0; cin >> n; double* num = new double[n]; for (int i = 0; i < n; i++) { c原创 2021-11-09 21:21:08 · 279 阅读 · 0 评论 -
PAT_乙级_1048_数字加密
#include<iostream>using namespace std;#include<algorithm>int main() { //本题输入数值较大,故使用字符串进行计算 //本题可以提前将A与B的字符串分类,使用函数封装思想,可以精简算法 //或者提前将字符串补齐,因为无论是否补位,基本上的B-A与奇偶问题是不变的 //不要总想着分类,考虑是否可以将问题归一 //很多题都是因为强行分类,导致题目变得复杂 //处理字符串问题,使用c++更为方便.原创 2021-11-09 00:17:57 · 52 阅读 · 0 评论 -
PAT1043_乙级_输出PATest
#include<iostream>using namespace std;int main() { string str; cin >> str; int pat[6] = { 0 }; char str1[6] = { 'P','A','T','e','s','t' }; for (int i = 0; i < str.length(); i++) { if (str[i] == 'P') pat[0]++; else if (str[i]...原创 2021-11-03 21:02:30 · 89 阅读 · 0 评论