【C++】刷题日记(day11)

简介: 刷题是我们学习编程的一个重要模块,刷题能帮助我们巩固我们学习的知识,能够增强我们的编程水平. 本文总共讲了5题牛客高频的选择题,以及两道牛客编程题,希望大家读后能够有所收获!

mmexport1669275032089.jpg

清风徐来,水波不兴。

一、选择题

1、下述哪种情况会提出中断请求

A.在键盘输入过程中,每按一次键

B.两数相加结果为零

C.计算结果溢出

D.一条系统汇编指令执行完成

答案:A。分析:每按键一次,或者是点击鼠标一次,就会产生一个中断,称为按键中断。

2、以下哪些不是内核对象()

A.进程

B.线程

C.互斥器

D.临界区

答案:D。分析:临界区是资源对象。


3、单任务系统中两个程序A和B,其中

A程序:CPU:10s->设备1:5s->CPU:5s->设备2:10s->CPU:10s;B程序:设备1:10s->CPU:10s->设备2:5s->CPU:5s->设备2:10s;执行顺序为A->B,那么CPU的利用率是()

A.30%

B.40%

C.50%

D.60%

答案:C。分析:A程序,CPU时间为10+5+10=25s,总时间为10+5+5+10+10=40s;B程序,CPU时间为10+5=15s,总时间为10+10+5+5+10=40s;CPU总时间为40s,两个进程的总时间为80s,

CPU的利用为40/80=0.5


3、进程调度是从()选择一个进程投入运行。

A、等待队列

B、提交队列

C、作业后备对列

D、就绪队列

答案:D。分析:就绪队列是等待CPU时间的队列。


4、某系统中有11台打印机,N个进程共享打印机资源,每个进程要求3台,当N的取值不超过()时系统不会

发生死锁。

A.4

B.5

C.6

D.7

答案:B。分析:不发生死锁的条件是至少能保证一个进程能获得三台打印机资源。

最坏的情况是1个进程获取三台打印机资源,另外N-1个进程获取到两台打印机,等待获取第三台。

3+(N-1)*2=11


5、什么是内存抖动(Thrashing)()

A.非常频繁的换页活动

B.非常高的CPU执行活动

C.一个极长的执行进程

D.一个极大的虚拟内存

答案:A。页面的频繁更换,导致整个系统效率急剧下降,这个现象称为内存抖动。

抖动一般是内存分配算法不好,内存太小引或者程序的算法不佳引起的页面频繁从内存调入调出。

编程题

1、剪花布条

image.png

我的思路是:把每个字符存起来,如果字符串s2有的字符s1 没有,就直接令flag = 1;然后输出0 ,接下来再测试下一组

如果s2的字符s1也有,就计算s1的字符和s2对应字符的数字相除最小的

结果有两组样例过不了;还是得用贪心算法

#include <iostream>#include <string>usingnamespacestd;
intmain(){
stringstr, s;
intcount=0;
while(cin>>str>>s){
count=0;
size_tpos=0;
//while((pos = str.find(s)) != string::npos){//    str.erase(pos, pos + s.size());//    ++count;//}while((pos=str.find(s, pos)) !=string::npos){
pos+=s.size();
++count;
        }
cout<<count<<endl;
    }
return0;
}

2、客似云来

image.png

实际上也是斐波那契数列系列问题

#include<iostream>#include<string>usingnamespacestd;
constintN=81;
inta[N] = { 0 };
voidfbnx()
{
a[0] =1, a[1] =1;
for (inti=2; i<81; i++)
    {
a[i] =a[i-1] +a[i-2];
    }
}
intmain()
{
intf, t;
while (cin>>f>>t)
    {
fbnx();
longlongans=0;
for (inti=f-1; i<t; i++)
        {
ans+=a[i];
        }
cout<<ans<<endl;
    }
return0;
}


总结

本文总共讲了5题牛客高频的选择题,以及两道牛客编程题,希望大家读后能够有所收获!





相关文章
|
算法 C语言 C++
从C语言的使用转换到C++(上篇)——刷题、竞赛篇
从C语言的使用转换到C++(上篇)——刷题、竞赛篇
277 0
|
存储 C++
【五一创作】C++刷题 【入门4】数组
【五一创作】C++刷题 【入门4】数组
131 0
|
机器学习/深度学习 存储 人工智能
【c++百日刷题计划】 ———— DAY12,奋战百天,带你熟练掌握基本算法
【c++百日刷题计划】 ———— DAY12,奋战百天,带你熟练掌握基本算法
216 0
|
6月前
|
算法 C++
【数据结构与算法】:关于时间复杂度与空间复杂度的计算(C/C++篇)——含Leetcode刷题-2
【数据结构与算法】:关于时间复杂度与空间复杂度的计算(C/C++篇)——含Leetcode刷题
|
6月前
|
算法 C++
【数据结构与算法】:关于时间复杂度与空间复杂度的计算(C/C++篇)——含Leetcode刷题-1
【数据结构与算法】:关于时间复杂度与空间复杂度的计算(C/C++篇)——含Leetcode刷题
|
7月前
|
C语言 C++
【C语言/C++】牛客网刷题训练-12
【C语言/C++】牛客网刷题训练-12
|
7月前
|
存储 自然语言处理 C++
刷题用到的非常有用的函数c++(持续更新)
刷题用到的非常有用的函数c++(持续更新)
89 1
|
存储 C语言 C++
【C/C++刷题——leetcode】查找字符串中最大的子串
【C/C++刷题——leetcode】查找字符串中最大的子串
334 0
|
机器学习/深度学习 人工智能 C++
【c++百日刷题计划】 ———— DAY16,刷题百天,养成刷题好习惯
【c++百日刷题计划】 ———— DAY16,刷题百天,养成刷题好习惯
192 0
【c++百日刷题计划】 ———— DAY16,刷题百天,养成刷题好习惯
|
存储 算法 C++
【c++百日刷题计划】 ———— DAY13,奋战百天,带你熟练掌握基本算法
【c++百日刷题计划】 ———— DAY13,奋战百天,带你熟练掌握基本算法
360 0