通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"CSP考试" 试卷中 CSP-S1提高级初赛试卷[2021] 中有题目如下:
第1题
(魔法数字)小H的魔法数字是4。给定n,他希望用若干个4进行若干次加法、减法和整除运算得到n。但由于小H计算能力有限,计算过程中只能出现不超过M=10000的正整数。求至少可能用到多少个4。
例如,当n=2时,有2=(4+4) / 4,用到了3个4,是最优方案。
试补全程序。
#include <iostream> #include <cstdlib> #include <climits> using namespace std; const int M = 10000; bool Vis[M + 1]; int F[M + 1]; void update(int &x, int y) { if (y < x) x = y; } int main() { int n; cin >> n; for (int i = 0; i <= M; i++) F[i] = INT_MAX; ①; int r = 0; while (②) { r++; int x = 0; for (int i = 1; i <= M; i++) if (③) x = i; Vis[x] = 1; for (int i = 1; i <= M; i++) if (④) { int t = F[i] + F[x]; if (i + x <= M) update(F[i + x], t); if (i != x) update(F[abs(i - x)], t); if (i % x == 0) update(F[i / x], t); if (x % i == 0) update(F[x / i], t); } } cout << F[n] << endl; return 0; }
③处应填( )
F[i]==r
!Vis[i]&&F[i]==r
F[i]<F[x]
!Vis[i]&&F[i]<F[x]
所属试卷:CSP-S1提高级初赛试卷[2021]
下面不属于C++的预定义的流对象是
下列程序的运行结果是( )。
编写代码,获得用户输入的一个两位自然数,输出其十位和个
在面向对象方法中,不属于“对象”基本特点的是( )。
以下程序的功能是判断输入的一个整数是否能被3或7整除,
表达式list (map (lambda x:x+5.
表达式 type(3.0) in (int,float
当a=3,b=2,c=1时,表达式f=a>b>c的值是
已有定义inta;floatb,x;charc1,c2
以下程序的输出结果是( )。
使用Prim(普里姆)算法求带权连通图的最小(代价)生
假定计算机的主频为500MHz,CPI为4。现有设备A
在字符界面环境下注销LINUX,可用exit或ctrl
Linux在I386体系结构中支持 ______分页机
下面给出了一个SHELL程序,试对其行后有#(n)形式
简要论述Kswapd核心线程的动态特性。答:主要通过n
下列不是Linux系统进程类型的是______ 。
Linux操作系统中,将用户添加的组的命令是( )
设有关系R(A,B,C)和S(A,D,E), W=RS
在数据库设计中,分析客户的业务和数据处理需求属于阶
(8 分)某计算机用硬盘作为启动盘,硬盘第一个扇区存放
以下叙述正确的是( )。
功能:在键盘上输入一个3行3列矩阵的各个元素的值(值为
若s是int型变量,且s=6,则下面表达式的值是___
某二叉树的前序序列为ABCDEFG,中序序列为DCBA
从一个 4×4的棋盘中选取不在同一行也不在同一列上的两
二进制数 111.101 所对应的十进制数是 ( ).
输入: 18输出: ___________
字符 '0' 的 ASCII 码为 48,则字符 '9
(烽火传递) 烽火台又称烽燧,是重要的军事防御设施,一
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2