PAT
我他么怎么这么菜
这个作者很懒,什么都没留下…
展开
-
电话聊天狂人(C++STL)
这个题就小题小做把,直接map vector走起。如果把电话号码当作string读入,有超时的危险。如果用长整型会稍微快一点。#include <iostream>#include <map>#include <vector>using namespace std;typedef long long ll;map<ll, int> m...原创 2020-04-16 21:32:47 · 337 阅读 · 0 评论 -
PAT sort with swap(0, *) (索引排序)
PAT sort with swap(0, *) (索引排序)稍微有点难度的一道题,开始写一个给超时了,直接把for循环套在了while里,硬生生的把复杂度从O(mN)拉到了O(N^2)为了解决这道题,首先需要知道一些知识:N个数字的排列由若干个独立的环构成。这句话什么意思?比如对于一个从(0,N−1)(0,N-1)(0,N−1)的排列,表示成数组的形式,记为A[N]A[N]A[N],令...原创 2020-04-14 17:47:09 · 141 阅读 · 0 评论 -
PAT Insert or Merge
PAT Insert or Merge给你一段初始序列,以及已经排序了一部分的序列,需要判断是采取的插入排序还是归并排序,并输出下一次迭代后的序列。如果是考试的话,我肯定会直接模拟,把整个排序的过程写出来,然后每次排序一部分后对比,看看是否和题目所给的序列符合。当然我一次就直接这么写的,然后基本上什么都不用考虑就过了。因为数据范围很小,所以也不会超时。但是这道题的目的肯定不是让你这么写。思路...原创 2020-04-11 18:06:27 · 135 阅读 · 0 评论 -
PAT Insertion or Heap Sort
Insertion or Heap Sort题目给定一段初始序列和一段已经排序部分的序列,判断是插入排序还是堆排序。思路和Insert or Merge差不多,但是判断堆排序更简单。众所周知堆排序的顺序从大从小进行的,即已经排好序的部分位于数组的后面,未排好序的部分位于数组的前面部分,并且第一个位置就是堆顶,如果是大根堆的话,就是元素最大的位置。我们的任务是需要找到已经排好部分和未排好部分...原创 2020-04-11 19:16:21 · 112 阅读 · 0 评论 -
PAT Judge
PAT Judge这个题没什么算法。。直接用sort就好了。多关键字排序。思路看代码/*注意点: 1.score高低排序。 2.solved高低排序 3.id高低排序 4.输出时候,没有提交的问题输出-1,提交但是没编译通过的输出0; 5.不应该输出没有提交或者没有编译通过的人。 */ #include <iostream>#include <cst...原创 2020-04-14 10:14:02 · 406 阅读 · 0 评论