学进去-教育应平等而普惠
排序:
61道相关试题
(洪水填充)现有用字符标记像素颜色的8x8图像。颜色填充的操作描述如下:给定起始像素的位置和待填充的颜色,将起始像素和所有可达的像素(可达的定义:经过一次或多次的向上、下、左、右四个方向移动所能到达且终点和路径上所有像素的颜色都与起始像素颜色相同),替换为给定的颜色。
试补全程序。
01 #include <bits/stdc++.h>
02 using namespace std;
03
04 const int ROWS = 8;
05 const int COLS = 8;
06
07 struct Point {
08 int r, c;
09 Point(int r, int c) : r(r), c(c) {}
10 };
11
12 bool is_valid(char image[ROWS][COLS], Point pt,
13 int prev_color, int new_color) {
14 int r = pt.r;
15 int c = pt.c;
16 return (0 <= r && r < ROWS && 0 <= c && c < COLS &&
17 ① && image[r][c] != new_color);
18 }
19
20 void flood_fill(char image[ROWS][COLS], Point cur, int new_color) {
21 queue<Point> queue;
22 queue.push(cur);
23
24 int prev_color = image[cur.r][cur.c];
25 ②;
26
27 while (!queue.empty()) {
28 Point pt = queue.front();
29 queue.pop();
30
31 Point points[4] = {③, Point(pt.r - 1, pt.c),
32 Point(pt.r, pt.c + 1), Point(pt.r, pt.c - 1)};
33 for (auto p : points) {
34 if (is_valid(image, p, prev_color, new_color)) {
35 ④;
36 ⑤;
37 }
38 }
39 }
40 }
41
42 int main() {
43 char image[ROWS][COLS] = {{'g', 'g', 'g', 'g', 'g', 'g', 'g', 'g'},
44 {'g', 'g', 'g', 'g', 'g', 'g', 'r', 'r'},
45 {'g', 'r', 'r', 'g', 'g', 'r', 'g', 'g'},
46 {'g', 'b', 'b', 'b', 'b', 'r', 'g', 'r'},
47 {'g', 'g', 'g', 'b', 'b', 'r', 'g', 'r'},
48 {'g', 'g', 'g', 'b', 'b', 'b', 'b', 'r'},
49 {'g', 'g', 'g', 'g', 'g', 'b', 'g', 'g'},
50 {'g', 'g', 'g', 'g', 'g', 'b', 'b', 'g'}};
51
52 Point cur(4, 4);
53 char new_color = 'y';
54
55 flood_fill(image, cur, new_color);
56
57 for (int r = 0; r < ROWS; r++) {
58 for (int c = 0; c < COLS; c++) {
59 cout << image[r][c] << " ";
60 }
61 cout << endl;
62 }
63 // 输出:
64 // g g g g g g g g
65 // g g g g g g r r
66 // g r r g g r g g
67 // g y y y y r g r
68 // g g g y y r g r
69 // g g g y y y y r
70 // g g g g g y g g
71 // g g g g g y y g
72
73 return 0;
74 }
(1)①处应填( )
A. image[r][c] == prev_color
B. image[r][c] != prev_color
C. image[r][c] == new_color
D. image[r][c] != new_color
(2)②处应填( )
A. image[cur.r+1][cur.c] = new_color
B. image[cur.r][cur.c] = new_color
C. image[cur.r][cur.c+1] = new_color
D. image[cur.r][cur.c] = prev_color
(3)③处应填( )
A. Point(pt.r, pt.c)              B. Point(pt.r, pt.c+1)
C. Point(pt.r+1, pt.c)              D. Point(pt.r+1, pt.c+1)
(4)④处应填( )
A. prev_color = image[p.r][p.c]              B. new_color = image[p.r][p.c]
C. image[p.r][p.c] = prev_color              D. image[p.r][p.c] = new_color
(5)⑤处应填( )
A. queue.push(p)
B. queue.push(pt)
C. queue.push(cur)
D. queue.push(Point(ROWS,COLS))
类型:操作题
难度系数:困难0.15
收藏
纠错
详情
01 #include <algorithm>
02 #include <iostream>
03 #include <limits>
04
05 using namespace std;
06
07 const int MAXN = 105;
08 const int MAXK = 105;
09
10 int h[MAXN][MAXK];
11
12 int f(int n, int m)
13 {
14 if (m == 1) return n;
15 if (n == 0) return 0;
16
17 int ret = numeric_limits<int>::max();
18 for (int i = 1; i <= n; i++)
19 ret = min(ret, max(f(n - i, m), f(i - 1, m - 1)) + 1);
20 return ret;
21 }
22
23 int g(int n, int m)
24 {
25 for (int i = 1; i <= n; i++)
26 h[i][1] = i;
27 for (int j = 1; j <= m; j++)
28 h[0][j] = 0;
29
30 for (int i = 1; i <= n; i++) {
31 for (int j = 2; j <= m; j++) {
32 h[i][j] = numeric_limits<int>::max();
33 for (int k = 1; k <= i; k++)
34 h[i][j] = min(
35 h[i][j],
36 max(h[i - k][j], h[k - 1][j - 1]) + 1);
37 }
38 }
39
40 return h[n][m];
41 }
42
43 int main()
44 {
45 int n, m;
46 cin >> n >> m;
47 cout << f(n, m) << endl << g(n, m) << endl;
48 return 0;
49 }
假设输入的 n 、m   均 是不超过 100   的 正整数 ,完成下面的判断题和单选题 :
判断题
(1)当输入为“7 3”时,第19行用来取最小值的min函数执行了449次。(     )
(2)输出的两行整数总是相同的。(     )
(3)当m为1时,输出的第一行总为n。(     )
单选题
(4)算法g(n,m)最为准确的时间复杂度分析结果为(     )
A. 0(n3/2m)              B. 0(nm)              C. 0(n2m)              D. 0(nm2)
(5)当输入为“20 2”时,输出的第一行为(     )
A.“4”              B.“5”              C.“6”              D.“20”
(6)当输入为“100   100”时,输出的第一行为(     )
A.“6”              B.“7”              C.“8”              D.“9”
类型:操作题
难度系数:困难0.15
收藏
纠错
详情
打开考生文件夹下的Word文档“水调歌头.docx”(如下图),完成后面(1)-(5)小题操作。

(1)设置纸张大小为Letter,左、右页边距各为2厘米。(     )
操作:单击“        ”选项卡下的“        ”按钮,选择纸张大小为:“        ”,单击“        ”按钮后选择“自定义边距(A)…”,然后在页边距对话框中单击“ ”框输入2厘米,“        ”框输入2厘米。

(2)设置标题艺术字环绕方式为“穿越型环绕”,对齐方式为“上下居中”。(     )
操作:选中标题文字,然后选择“        ”选项卡下的“        ”组中的“        ”按钮,在弹出的菜单中选择“        ”环绕方式。最后单击“        ”按钮,在弹出的下拉菜单中选择“        ”对齐方式完成。

(3)设置正文的文字字体为楷体,字号为小四号,字形为加粗;段落首行缩进2字符,行间距为固定值18磅。(     )
操作:选中正文文字,在“        ”选项卡中选择“        ”框为楷体; “        ”框为小四号;单击“ ”按钮加粗。然后单击“段落”组右下角  按钮,并在弹出的“段落”对话框中的“       ”框选择“首行缩进”,则“磅值”框自动默认为2字符,再在“ ”框选择“固定值”,“设置值”框输入18磅,单击“确定”按钮完成。

(4)设置正文文字的字符间距加宽1磅。(     )
操作:选中正文,单击“    ”选项卡下“    ”组右下角的的“    ”按钮,在弹出的对话框中选择“    ”标签,并在标签页上的“间距”栏中单击“    ”按钮,选择“    ”选项,然后单击“    ”使磅值变为1磅,最后单击“    ”按钮完成。

(5)将“背景图.jpg”插入文档中,并设置环绕方式为“衬于文字下方”。(     )
操作:将光标定位到文档中,单击“    ”选项卡下的“    ”按钮,在弹出的“插入图片”对话框中选中图片,单击“插入”按钮。然后选中图片,在“    ”选项卡下的“排列”组中单击“    ”按钮,在弹出的菜单中选择环绕方式为“上下型环绕”。
类型:操作题
难度系数:困难0.15
收藏
纠错
详情
华为公司研发出了领先世界的5G通讯技术,其中5G是指数据通讯的(        )
A.宽度B.深度C.速度D.长度
类型:选择题
难度系数:困难0.15
收藏
纠错
详情
当幻灯片中文字较多,可用灰色来“隐藏”部分文字,让页面内容看起来精简,这种方式称为(       
A.反白B.降噪
C.图标引导D.阴影
类型:选择题
难度系数:困难0.15
收藏
纠错
详情
幻灯片放映过程中,演讲者若想黑屏,应该按(       )键。
A.<W>B.<B>C.<Ctrl>D.<Shift>
类型:选择题
难度系数:困难0.15
收藏
纠错
详情
关于信息处理,下列说法错误的是(     )。
A.对大量的原始信息进行记录、整理、统计、分析,最终得到可以被人们直接利用的信息的过程,称为信息处理。
B.信息输入就是通过计算机键盘把数据输入到计算机中
C.信息发布是信息输出的一种方式
D.信息处理是指对信息的加工整理过程,包括信息的输入和输出
类型:选择题
难度系数:困难0.15
收藏
纠错
详情
图层蒙版中的灰色区域表示半透明,灰色越接近白色,就越透明。(      )
类型:判断题
难度系数:困难0.15
收藏
纠错
详情
在电子表格中使用函数时,为使“单元格引用区域”不自动变化,需要再行号和列号之间加上一个(       )符号。
A.@B.!C.*D.$
类型:选择题
难度系数:困难0.15
收藏
纠错
详情
在电子表格中使用(       )函数可以实现自动排名。
A.MAXB.SUMC.VLOOKUPD.RANK
类型:选择题
难度系数:困难0.15
收藏
纠错
详情
下一页
尾页