牛客-栈、队列和stl-2022.10.14

Cadence IC617新手避坑:从零搭建MOS管V-I仿真环境(附PDK配置心得) 本文详细介绍了如何在Cadence IC617中从零搭建MOS管V-I仿真环境,包括软件安装、PDK配置、原理图设计、仿真器设置等关键步骤。特别针对新手常见的15个隐形陷阱提供解决方案,帮助工程师快速掌握V-I特性曲线仿真技巧,提升IC设计效率。 阅读详情

Keep In Line

用数组模拟队列,用unordered_map记录每个名字的同学的位置,之后判断当前队列的第一个名字和出队的人的名字是否相同,如果相同则将头指针下标移动到下一个,符合排队规则的人数+1,否则更新当前位置之后的所有人的名字的位置(更新unordered_map)

#include <bits/stdc++.h>
using namespace std;
string Line[100010];
int main() {
    int t;
    cin >> t;
    while(t--) {
        int n;
        cin >> n;
        unordered_map<string, int> p;
        int res = 0, start = 0, end = 0;
        for(int i = 0; i < n; i++) {
            string Opt, Name;
            cin >> Opt >> Name;
            if(Opt == "in") {
                Line[end] = Name;
                p[Name] = end;
                end += 1;
            } else if(Opt == "out") {
                if(Line[start] == Name) {
                    res += 1;
                    start += 1;
                } else {
                    if(p[Name] == end - 1)
                        p[Name] = -1;
                    else {
                        for(int j = p[Name] + 1; j < end; j++) {
                            Line[j - 1] = Line[j];
                            p[Line[j]] -= 1;
                        }
                    }
                    end -= 1;
                }
            }
        }
        cout << res << endl;
    }
    return 0;
}

Number

先记录小于最大数值的所有的质数,然后对于这些质数进行2次方,3次方,4次方求和的三重循环遍历,考虑到最大的质数数据范围小于一万,数据范围为10^3,所以直接遍历记录相加求和的结果即可。注意去重!

#include <bits/stdc++.h>
using namespace std;
const int NUM = 10000;
bool vis[10010] = {false};
vector<int> prime;
void init() {
    for(int i = 2; i <= sqrt(NUM + 0.5); i++) {
        if(!vis[i]) {
            for(int j = i * i; j <= NUM; j += i)
                vis[j] = true;
        }
    }
    for(int i = 2; i <= NUM; i++) {
        if(!vis[i])
            prime.emplace_back(i);
    }
}
int main() {
    init();
    int n;
    cin >> n;
    unordered_set<long long> p;
    int size = prime.size();
    //cout << size << endl;
    for(int i = 0; i < size; i++) {
        long long sum1 = prime[i] * prime[i];
        if(sum1 > n)
            break;
        for(int j = 0; j < size; j++) {
            long long sum2 = sum1 + prime[j] * prime[j] * prime[j];
            if(sum2 > n)
                break;
            for(int k = 0; k < size; k++) {
                long long sum3 = sum2 + prime[k] * prime[k] * prime[k] * prime[k];
                if(sum3 > n)
                    break;
                p.insert(sum3);           
            }
        }
    }
    cout << p.size() << endl;
    return 0;
}

牛客华为机试题刷题笔记(二) 牛客华为刷题记录(二) 阅读详情

相关推荐

STL底层原理与高频面试考点全解析:从容器到迭代器失效

STL是C++开发与面试中的核心知识体系,它涵盖vector、deque、map等经典容器与配套算法。理解vector扩容机制、deque分段连续结构、红黑树有序性等底层原理,是掌握迭代器失效规则和内存管理的关键。STL的设计体现了性能与工程取舍的统一:空间配置器减少内存碎片,std::sort通过IntroSort融合多种排序策略,保证最坏情况下的效率。这些技术被广泛应用于高性能服务、缓存系统、日志分析等真实场景。在工程实践中,合理选择容器、规避迭代器失效陷阱,是C++工程师的基本能力。本文从容器底层到算

weixin_28700411的博客 234

数组、链表、栈、队列和STL

数组 数组是一种最基本的数据结构,它是内存上的一块连续存储空间。正因如此数组的随机访问很方便。但数组也有其固有的限制,大小分配后不能改变。 STL中的数组 STL中的Array是静态数组模板,就是我们所说的数组。使用方法如下。 std::array<int, 3> a1 = { 1, 2, 3 }; std::array<std::string, 2&...

weixin_30367873的博客 298

百度后端秋招笔试全复盘:C++/PHP/GO方向考点与避坑指南

在后端开发岗位的求职中,算法与数据结构是衡量候选人基本功的核心标尺,而各大厂笔试往往在此基础上进一步考察语言细节与工程实践能力。对于志在C++、PHP、GO等语言方向的技术人而言,理解操作系统原理、掌握并发编程模型、熟悉内存管理机制,是应对高难度笔试题的关键。这类笔试不仅检验知识储备,更考验压力下的问题建模与代码实现效率。从动态规划的优化策略到系统设计题的工程权衡,每一个环节均需扎实的准备与清晰的解题思路。本文基于真实的大厂笔试经历,梳理了后端笔试的通用题型结构、三个热门语言方向的高频考点与易错陷阱,并分享

weixin_34239169的博客 428

STL中常用的容器——stack,queue和list容器

一,stack容器 1,stack容器概述: stack 是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口,形式 如图所示。stack 容器允许新增元素,移除元素,取得栈顶元素,但是除了最顶端 外,没有任何其他方法可以存取 stack 的其他元素。换言之,stack 不允许有遍历 行为。 有元素推入栈的操作称为:push,将元素推出 stack 的操作称为 pop. 如下: 2.stack迭代器 Stack 所有元素的进出都必须符合”先进后出”的条件,只有 stac

qq_45652092的博客 997

CrackerXI+脱壳实战:解决iOS应用逆向中的加密文件问题

本文详细介绍了如何使用CrackerXI+工具对iOS应用进行脱壳,解决App Store应用因FairPlay DRM加密而无法进行静态分析的难题。通过图形化界面一键操作,CrackerXI+能高效获取解密后的可执行文件,为逆向工程奠定基础。文章涵盖工具选型、实战步骤及常见问题排查,是iOS逆向入门与进阶的实用指南。

seed的博客 258

ArcGIS学习记录—SHP文件转换为KML KMZ数据,并显示面要素相应的标注

使用相应软件操作获取KMZ数据得以下发到外业调查人员,使得矢量数据能够更显而易见,可视化,让外业人员的工作减轻许多。(过程步骤是借鉴于网络上的相关人士给的建议,根据这些建议自己做出来的步骤,可能有些粗略,有问题的话可以再进行探讨)...

qq_41046162的博客 5万+

牛客第二场-处女座的签到题-毒瘤题-STL的nth_element()

平面上有n个点,问:平面上所有三角形面积第k大的三角形的面积是多少? 输入描述: 第一行T,表示样例的个数。对于每一组样例,第一行两个整数n和k,接下来n行,每行两个整数x,y表示点的坐标T&amp;lt;=803&amp;lt;=n&amp;lt;=100-109&amp;lt;=x,y&amp;lt;=109对于每一组样例,保证任意两点不重合,且能构成的三角形的个数不小于k 输出描述: 对于每一组样例,输出第k大三角形的面积,精确...

我们花时间收集,却忘了最重要的其实是花时间去消化 385

高速PCB设计中串扰的成因、影响与实战控制策略

在高速数字电路与硬件系统设计中,信号完整性是确保系统稳定可靠的核心基础。其核心原理在于,当信号在传输线上传播时,会伴随产生电场与磁场,若相邻导线距离过近,便会通过电磁场耦合产生不期望的能量转移,即串扰。这一现象会直接导致信号波形畸变、时序偏移和噪声裕量降低,严重影响系统性能。从技术价值看,深入理解并有效控制串扰,是提升数据传输速率、保障系统稳定性和降低误码率的关键。其应用场景广泛覆盖了从高速SerDes链路、DDR内存接口到高精度模拟电路等几乎所有现代电子系统。本文聚焦于高速PCB设计中的串扰问题,系统剖析

weixin_27625589的博客 574

C++优先队列详解与仿函数应用

本文详细介绍了C++中的priority_queue(优先队列)及其实现原理。priority_queue是一种特殊的队列数据结构,基于堆算法实现,默认大顶堆(最大元素优先出队)。文章讲解了其基本操作、底层实现(包括容器适配与堆算法),并通过仿函数实现了大堆/小堆的灵活转换。此外,还介绍了仿函数在其他场景(如sort、remove_if)的应用,并提供了OJ实战题解(数组中第k大元素)。全文结合代码示例,系统性地讲解了priority_queue的使用与实现原理。

2302_80761497的博客 1269

OpenMontage:AI代理驱动的端到端视频生产系统实战指南

在当今内容创作领域,自动化视频生成技术正成为提升生产效率的关键。其核心原理在于通过智能体(Agent)架构,将复杂的视频制作流程拆解为可被AI理解和执行的标准化任务,从而实现从创意到成片的端到端自动化。这项技术的核心价值在于大幅降低了专业视频制作的门槛,使非专业用户也能快速产出具有一定专业度的内容。其典型应用场景包括社交媒体短片、产品演示、知识科普视频的批量生产。OpenMontage正是这一技术理念的杰出实践,它构建了一个完整的代理驱动视频生产系统,将AI编码助手转变为能自主规划并执行脚本撰写、素材检索、

weixin_35757191的博客 648

SAP 小结

关于SAP 开发的实习就要告一段落了,从刚开始接触,到现在已经6个月了,想要很简要的把自己对SAP的理解写出来,便于以后查阅(不定期更新)。 1. 什么是SAP? 广义的SAP,可以指代SAP公司以及SAP的各种产品,它的意义要在特定语境下才能确定。一般我们所说的SAP特指SAP ERP。 SAP ERP(enterprise resource planning)是一个企业信息系统。通过这个系

Remy的博客 1951

算法强训day14

简单题,把第一个字符串记忆,第二个依次查找,顺便删除一个,如果找不到就输出No(哈哈哈,stl嘎嘎香)继续上回的强训13,今天的第二题,第三题比较难。跳着加,来一个优先队列,每次只要第二个最大的。三、删除相邻数字的最⼤分数。

syxsanze的博客 203

axi ps读写pl_PL读写DDR:Datamover能干什么

最近发现工程项目中一直在用AXI-DMA。这玩意儿搬数据倒是没问题,就是用axi-lite配置起来非常反人类。。。简单的办法其实是用datamover ip核。这个ip核能干嘛呢。准备写个文章解析一下。由于好多feature没用过,所以仅仅看文档可能理解有误,欢迎指出错误。首先扫个盲:MM2S指的是Memory map to stream. 读DDR. S2MM指的是steam to memory...

weixin_35908791的博客 1597

第二周训练题单--基础数据结构

文章介绍了第二周训练的所有专题内容,其中包含优先队列,哈希,stck与字符串的结合,bitset,二叉树问题等,基本都是数据结构的内容,而其中含有新学习的内容如bitset,还有新的算法思想“对顶堆”,“后悔贪心”,“倍增思想”等

2603_95642089的博客 733

华为OD机考双机位C卷 - 相对开音节 (Java & Python & JS & GO & C++ & C)

华为OD机考双机位C卷 - 相对开音节 , 提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。

算法大师! 743

Docker(八):Docker Compose(容器编排) 管理多容器应用—实战案例演示

🟢 Docker(八):Docker Compose(容器编排) 管理多容器应用—实战案例演示

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 6万+

计算机专业考研复试上机算法学习

计算机考研复试上机算法刷题

theworld666的博客 8026

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

计算机考研复试上机算法学习

准备考研复试上机刷的算法题

theworld666的博客 3887

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

牛客 打印N个数组整体最大的Top K

题目链接:https://www.nowcoder.com/practice/5727b69bf80541c98c06ab90cf4c509e?tpId=101&tqId=33102&tPage=1&rp=1&ru=/ta/programmer-code-interview-guide&qru=/ta/programmer-code-intervi...

weixin_30287169的博客 466

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

2026.7.27-2026.8.2(周报14):

C(Rank Subsequence):首先不能直接贪心,左排名和右排名必须同时考虑(原本想正向逆向都考虑一遍,都满足的点就是可以的点),其次不能二分,可能存在3不行4行的情况,应该直接遍历长度找最长;

nise825的博客 226

处女座的签到题 (计算几何)

链接:https://ac.nowcoder.com/acm/contest/327/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 平面上有n个点,问:平面上所有三角形面积第k大的三角形的面积是多少? 输入描述: 第一行T,表示样例的个数。 对于每一组样...

lgz0921的博客 265

牛客网 牛客练习赛7 B.购物-STL(priority_queue)

B.购物 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536K64bit IO Format: %lld 题目描述 在遥远的东方,有一家糖果专卖店 这家糖果店将会在每天出售一些糖果,它每天都会生产出m个糖果,第i天的第j个糖果价格为C[i][j]元 现在的你想要在接下来的n天去...

weixin_30371875的博客 182

搜狗C++校招笔试题解析:考点梳理与实战模板

C++工程师的校招笔试往往考察的不只是语法记忆,更是对底层原理和工程实践的掌握。从对象模型、内存布局到STL迭代器失效,再到字符串处理、链表反转、多线程并发等高频考点,企业的笔试题设计始终围绕真实业务场景展开。理解虚函数、智能指针、条件变量等概念的本质,才能在限定时间内写出健壮且高效的代码。本文以搜狗2017年C++试卷为切入点,系统拆解考点结构,提炼可复用的代码模板与应试策略,帮助准备校招的开发者查漏补缺,同时将基础理论映射到搜索引擎、输入法等实际应用后端的技术选型中,具有较强的自测与复习参考价值。

470

3D Vision、SLAM求职宝典 | 程序基础篇(A)

这一篇所涉及到的主要是C++语言基础,以及算法与数据结构的考点。实际上这些内容,各大公司都会有考察,无论是笔试还是面试,都离不开算法与数据结构,因为确实是技术岗的基础。 甚至有些公司,例如微软,特别看重手写代码的能力,现场给你一块小黑板,你不得不在短时间内组织好思路并书写,考虑边界、格式、性能等等。 因为SLAM领域中主要以C++语言为主(实时性要求),所以这里我们不提及其他语言了。 如果你的...

Welcome to the Western World 2194

cpp学习计划

内容包括:✅ 本周完成任务❌ 卡住问题💡 下周优化方向🧩 一条“可写进简历”的技术积累点每完成一个项目 → 立刻写:README(项目架构图 + 性能测试截图)技术博客(例如「我用C++实现了一个高性能HTTP服务器」)

qq_59116228的博客 1632

C++大厂面试实战指南:从内存管理到系统设计的核心考点解析

C++作为高性能系统开发的核心语言,其底层原理和工程实践是构建大型软件系统的基石。理解内存管理机制,如栈、堆、全局区的内存布局与对齐原则,是编写高效、稳定代码的基础。虚函数表(vtable)和运行时多态机制则体现了面向对象设计的精髓,而智能指针(如unique_ptr、shared_ptr)和移动语义等现代C++特性,是管理资源生命周期、提升性能的关键工具。在**阿里**、**华为**等对系统能力要求极高的大厂面试中,这些知识点常与**STL容器**的底层实现(如vector的扩容策略、map的红黑树结构)

culi4814的博客 467
上一篇: 【无标题】
下一篇: 牛客-栈、队列和stl 2022.10.16
Ls_attack
博客等级 码龄10年 25粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值