通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"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; }
②处应填( )
!Vis[n]
r<n
F[M]==INT_MAX
F[n]==INT_MAX
所属试卷:CSP-S1提高级初赛试卷[2021]
下列代码段声明了3个类,下列关于这些类之间关系的描述中
下列关于C++函数的说明中,正确的是。
以下代码的输出结果是( )。
阅读程序,写出程序运行结果。
请编写一个函数fun,它的功能是:求出一个2×M整型二
数据库管理系统是( )。
以下叙述中正确的是( )。
以下选项中错误的是( )。
若有定义语句:则与该语句等价的是 ( )。
有以下函数:该函数的功能是。
改正下面程序段中的错误,写出整个正确的程序段参考答案:
已知函数定义def demo(x,y,op):retu
在编写多层循环时,为了提高运行效率,应尽量減少内循环中
假设系统中有4个同类资源,进程P1、P2和P3需要的资
分别叙述linux对IDE硬盘和usb接口的移动硬盘的
在关系中,能惟一标识元组的属性组称为 。
参照完整性要求外码的值必须取 ,或等于被参照关系
在SQL中,用 ____命令可以存储表中的内容,即事物
在UPDATE触发器中,可以引用一个名为 _____的
一个C程序总是从_____开始执行。
若输入字符串:abcde<回车>,则以下while循环
C语言源程序文件的后缀是.c,经过编译之后,生成后缀为
有如下程序:程序运营后的输出成果是( )
若已定义:int a[]={0,1,2,3,4,5,6
下列叙述中错误的是
一个 32 位整型变量占用( )个字节。
输入: 3 5输出:
记 T 为一队列初始为空现有 n 个总和不超过 32
LZW 编码是一种自适应词典编码。在编码的过程中,开始
一个自然数在十进制下有 n位,则它在二进制下的位数与
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2