自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 非暴力沟通(尝试写一下)

非暴力沟通总结

2023-12-12 16:15:52 417

原创 PAT刷题感悟(适合基础一般的同学)

刷了一个多星期题了,感觉阻力非常非常大。从看不懂英语,再到实现不了题目逻辑, 再到自己实现的逻辑很复杂甚至很愚蠢,再到可以实现但是总有一些错误阻止AC,题目陷阱,自己编程的漏洞等等等。深深质疑自己适不适合走计算机这条路,但是今天刷题突然有了一点点感悟。1.算法笔记STL部分的题基本刷完了,觉得不能好高骛远,一味得刷后面的,强烈觉得回头从第四章算法初步开始刷,夯实自己编程的基础,慢慢有编程的感觉...

2020-02-12 15:57:59 471

原创 PAT甲级刷题准备

本人写博客的原因:本人大三学生,计科渣渣,觉得自己编程水平太差,所以决定今天开始刷PAT甲级锤炼自己(之前乙级刷了30多道,但没考过PAT考试,时间太紧还要准备考研,所以直接上甲级)。加上今年肺炎疫情原因,陈越姥姥在微博说今年三月份的PAT考试大概率推迟到六月,所以也算是个充电契机。这时候才开始刷题提高自己,其实自己有些后悔,但总要有个开始。万事开头难,管什么真理无穷,进一步有一步的欢喜!...

2020-02-01 19:23:49 3489

原创 代码随想录Day2 :977.有序数组的平方 209.长度最小的子数组 59.螺旋矩阵Ⅱ

因为数据升序,俩边的数据平方会很大,中间数据最小。因此俩头归并,双指针算法。申请一个新数组放排好的元素。听了carl哥的课才有思路。思路可以理解,但是实现细节感觉比较吃力。经典题型,注意起始点,四个方向的偏移量使用,以及边界点判定。一开始暴力解法,先赋值,再冒泡排序,超时。

2022-12-09 00:04:35 125 1

原创 代码随想录算法训练营第一天 | 704. 二分查找、27. 移除元素

第一次正式刷力扣,希望可以坚持。除了按照carl哥的规划,一定要做好笔记和思维导图,及时复习,刷好第一遍。704二分查找,二分查找是经典题目。需要牢记模板,灵活运用。遇到问题就是,没刷过力扣,不习惯。``27移除元素,是双指针算法。双指针考验自己的编程思路,不要害怕麻烦,要趁早熟练攻克。

2022-12-07 23:59:41 135 1

原创 PAT甲级-1085 Perfect Sequence

有点事,一周没编程,今天编这道题,逻辑给我整乱套了。过几天得回顾一下啊。1.先对输入的数据进行排序。2.开始遍历所有情况,其中i从0开始遍历,求得j,使得num[j]<=num[i]*p,用二分法去查找j,把满足情况的都个数记录并取最大值。3.不用二分法的话,第5个测试点会超时。4.使用long long存储数据。否则通不过第六个测试点。#include<iostream&g...

2020-03-01 01:39:13 217

原创 说一说指针中的结构体指针

之前学大一学c语言链表,总遇到结构体指针。当时很不明白为什么都要malloc申请空间。现在觉得,其实没说是结构体就必须要分配一块内存。首先,结构体和int char dobule等等一样,也是一种数据类型,无非是有点特殊而已;struct A {};struct A a; //在栈上分配空间;可以不malloc动态申请内存,CPU会为这个结构体变量分配内存。struct A *a ;//...

2020-02-28 22:34:46 145

原创 变量存储位置分配

c++中看定义的变量的类型:堆int* a = new int[100];//运行到这里才给a指向的空间分配//指针变量a存储在栈中。所指向的区域在堆中。a的值是这个堆区域的首地址。栈void fun(){int a;int b[100]; // 进入函数fun的时候从栈上分配}全局变量,常量程序启动时分配staticvoid fun(){static int a[...

2020-02-28 21:48:50 183

原创 动态分配内存malloc与new

有一种内存分配叫动态分配内存,C里一般涉及函数malloc,C++一般是new,这些内存分配后,一般要求程序设计者在用完后将其释放。1.malloc函数:malloc 使用:int *a = (int *)malloc ( sizeof (int ));头文件:#include <malloc.h>或#include<stdlib.h>功能:在堆中分配长度为num...

2020-02-28 21:47:52 169

原创 PAT甲级-1037 Magic Coupon

贪心算法。先将俩个集合分别读入数组,然后再降序排列。再分别从前向后遍历俩数相乘为正,然后再分别从后向前遍历俩数相乘为正。但是不能以俩数相乘>0作为判断条件,否则测试点1出错。比如俩个集合正数个数相等,负数个数相等时。4-3 -2 3 44-2 -1 2 3#include<iostream>#include<algorithm>using names...

2020-02-21 00:40:52 143

原创 leecode-20. 有效的括号

今天看到一道匹配括号的题。觉得练一练也有必要。就在leecode上找到了一道。题目:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出:...

2020-02-20 23:25:39 99

原创 PAT甲级-1070 Mooncake(可当贪心模板,零基础可看懂)

中文翻译可参照乙级1020。按照每种月饼的单价,从高到低开始卖,卖完为止,累计计算每种月饼的花费。注:测试点2考察库存不为整数的情况测试点3考察所有月饼库存总和不满足需求。我一直卡在测试点三,提示我段错误。所以以后大家要注意如果段错误,可能是数组越界,需要对数组序号进行控制。#include<iostream>#include<algorithm>#incl...

2020-02-19 23:41:41 279

原创 PAT甲级-1084 Broken Keyboard

此题可以作为模板学习,非常标准。俩个字符串,统计出现在第一个字符串,但没在第二个字符串中出现的字母。俩层for循环,找到未出现的字母,并且标记在bool数组标记出来。注意点:bool hashtable[100]={false};//初始化hashtable[s1[i]]=true;//其中s1[i]值对应的是ASCII码值#include<iostream>#includ...

2020-02-19 21:14:38 88

原创 PAT甲级-1083 List Grades

依旧是排序套路。#include<iostream>#include<algorithm>#include<cstdio>using namespace std;struct student{ string name; string id; int grade;}stu[1000];bool cmp(student a,student b)...

2020-02-19 12:03:54 138

原创 PAT甲级-1092 To Buy or Not to Buy

本题把题意看懂后并不难。运用map映射,即可完成问题。#include<iostream>#include<map>#include<string>using namespace std;int main(){ int i=2; string str1,str2; cin>>str1; cin>>str2; ...

2020-02-18 17:25:54 76

原创 PAT甲级-1012 The Best Rank

1.用结构体存储学生信息。分数以ACME顺序存储在一个数组里。2.每个分数ACME都会有一个排名,所以for循环4次,循环里执行sort,并且每一次循环给排名赋值,相同分数排名一致。3.设置rank[1000000][4]数组存储排名,利于查询。以空间换取时间。4.平均分可以用round()函数,四舍五入处理。#include<iostream>#include<cst...

2020-02-17 14:30:56 118

原创 PAT甲级-1025 PAT Ranking

本题是一道非常标准的排序题,可以作为模板参考。排序过程:算法笔记P1011.结构体定义2.cmp函数编写3.排名得实现#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;struct student{...

2020-02-14 18:06:33 86

原创 PAT甲级-1063 Set Similarity

最开始的代码,最后一个点超时。应该是判断条件处用了俩层循环,麻烦了。#include<bits/stdc++.h>//包含了所有头文件 #include<set>using namespace std;void panduan(set<int> s1,set<int> s2){ float num=0; for(set<int...

2020-02-12 15:21:42 83

原创 PAT甲级-1060 Are They Equal

心累,编了半天,运行超时。然后测试点六还过不去。PAT甲级真的很磨人啊。以下代码是第一遍终稿。没有考虑0的情况。然后判断逻辑复杂。需要改进。不需要用word重新装载删减后的字符串,然后根据有效数字位数来确定字符串。#include<iostream>#include<string>using namespace std;//有效数字是从第一个非零数到末尾为止 ...

2020-02-12 13:03:36 87

原创 PAT甲级-1071 Speech Patterns

本题是为统计题目所给的一段话中,出现次数最多的单词。并且单词case insensitive 不区分大小写。本题思路:大循环遍历整句话。然后在大循环里切割单词。并且单词非空的情况下才可以统计个数。如何表示单词非空,我调试了半天才发现自己表示错了。用了vs2010调试。空字符串的标记为两个双引号:""。(中间没有空格)而空格的ASCII为 32 你可以用ASCII码,表示也可以直接用’ ...

2020-02-10 21:54:07 114

原创 PAT甲级-1100 Mars Numbers(包括所有测试用例)

这道题的测试用例给我整急眼了。反复实验总结如下。1044 火星数字(20)(20 分)火星人是以13进制计数的:地球人的0被火星人称为tret。地球人数字1到12的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。火星人将进位以后的12个高位数字分别称为:tam, hel, maa, huh, tou, k...

2020-02-08 17:05:30 746

原创 PAT甲级-1054 The Dominant Color

本题不难,选好存储工具。注意俩点1.map中遍历使用迭代器。for(map<int,int>::iterator it=mp.begin();it!=mp.end();it++)it->first是键,it->second是值2.map中寻找某键对应的值。mp.find(id)返回值是个迭代器!!!!!!#include<iostream>#i...

2020-02-06 01:04:10 91

原创 PAT甲级-1039 Course List for Student(结合1047一起看)

本题与甲级1047很像,可以一起看,并且灵活检验了STL。是一道好题。本题注意点:1.这道题考察每个学生选的课程。是由字符串映射到数字。所以自然而然想到map <string, vector< int> >,但此题用这个最后一个测试往往数值很大会导致超时。所以采用字符串hash求解。2.如果用二维数组存储学生的课程编号,会导致最后一组测试用例内存超限,所以用vecto...

2020-02-05 01:31:41 132

原创 PAT甲级-1047 Student List for Course (25分)

STL中vector声明1.vector< typename> name;//一维变长数组typename可以是任何基本类型,int,double,char,结构体等若想要初始化 eg.vector< typename> num(10);//圆括号2.vector< typename>Arrayname[arraySize];//vector数组,二维...

2020-02-03 21:05:37 112

原创 PAT甲级-1148Werewolf - Simple Versio(零基础都能看懂!!!!!)

乙级1089是此题中文版,可以对照。https://pintia.cn/problem-sets/994805260223102976/problems/1038429385296453632题意分析N个玩家,每个玩家发言+5代表该玩家说5号玩家是农民。-4代表该玩家说4号玩家是狼人。我们俩层大循环穷举假设i,j为俩个狼人。第三层循环判断是不是 一共有两人撒谎,有一狼说谎,有一人说谎...

2020-02-03 02:37:39 225

原创 PAT甲级1154 Vertex Coloring (零基础都能看懂)

1154 Vertex Coloring (25分)A proper vertex coloring is a labeling of the graph’s vertices with colors such that no two vertices sharing the same edge have the same color. A coloring using at most k c...

2020-02-02 13:48:06 389

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除