PAT 2021年秋季 满分记录(含题目和题解)

博主分享了PAT考试满分的经历,回顾了学习C++的过程,通过阅读《C++ Primer》和《算法笔记》进行准备,并在CSDN上整理题解。文章提到了考试中的四道题目,包括数组与链表的模拟、栈的帽子问题、操场探索的DFS解决以及有序笛卡尔树的构建。
摘要由CSDN通过智能技术生成

Biubiubiu~

请添加图片描述

记录

总之就是非常爽。(爽是暂时的,不能抵扣浙大机试就开始哭了呜呜呜呜呜呜呜。)写算法写代码就是快乐,后面可以自由自在地看竞赛书了,慢慢修炼,打到 codeforces 1900 分。

从去年十二月开始学 C++,一个半月看完了《C++ Primer》前七章,然后做了五十多道乙级、十多道乙级,去考了2021年春季甲级。53分,当时心里还是五味杂陈。春天那个学期一边修环境的专业课(课还是比较多的),一边看《算法笔记》(胡凡大大的),一边刷《 算法笔记上机训练实战指南》,零零散散,到昨天差不多把 PAT 甲级的所有题(除了最后三套往年浙大机试题)全部刷完并更在了 CSDN 上。

当时刷乙级的时候在CSDN上面找题解,有一位大大给的题解,哈希和 STL 的用法真的惊艳一个刚学了点语言皮毛的人。从他那里还学会了埃氏筛法,后面两个月才在《算法笔记》书上看到。可惜后来换电脑找不到网页了,没有关注 TA。

《算法笔记》真的特别系统和考研向(或许也能当一个竞赛启蒙?但也只是启蒙,还不算入门,哈哈)。它有一个很好的目录,PAT 的支撑让这个目录的骨架充实起来。

最后给一下今天考试的代码。

7-1 Arrays and Linked Lists (20 分)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

简答模拟。

#include <bits/stdc++.h>
using namespace std;
struct Array{
   
    int beg,length;
};
vector<Array> vec;
int last=1;
int main() {
   
    int n,k;cin>>n>>k;
    for(int i=0;i<n;++i){
   
        int ad,len;cin>>ad>>len;
        vec.push_back({
   ad,len});
    }
    for(int i=0;i<k;++i){
   
        bool find=false;
        int id;cin>>id;
        int ctr=0;
        for(int j=0;j<vec.size();++j){
   
            ctr+=vec[j].length;
            if(ctr>=id+1){
   
                cout<<vec[j].beg+4*(id-ctr+vec[j].length)<<"\n";
                find=true;
                last=max(last,j+1);
                break;
            }
        }
        if(!find) cout<<"Illegal Access\n";
    }
    cout<<last;
}

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值