news 2026/8/11 3:07:40

2022年CSP-J初赛真题及答案解析(完善程序2)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2022年CSP-J初赛真题及答案解析(完善程序2)

2022年CSP-J初赛真题及答案解析(完善程序2)

第 2 题 完善程序(洪水填充)

现有用字符标记像素颜色的 8×88×8 图像。颜色填充的操作描述如下:给定起始像素的位置待填充的颜色,将起始像素和所有可达的像素(可达的定义:经过一次或多次的向上、下、左、右四个方向移动所能到达且终点和路径上所有像素的颜色都与起始像素颜色相同),替换为给定的颜色。

试补全程序。

#include<bits/stdc++.h>usingnamespacestd;constintROWS=8;constintCOLS=8;structPoint{intr,c;Point(intr,intc):r(r),c(c){}};boolis_valid(charimage[ROWS][COLS],Point pt,intprev_color,intnew_color){intr=pt.r;intc=pt.c;return(0<=r&&r<ROWS&&0<=c&&c<COLS&&&&image[r][c]!=new_color);}voidflood_fill(charimage[ROWS][COLS],Point cur,intnew_color){queue<Point>queue;queue.push(cur);intprev_color=image[cur.r][cur.c];;while(!queue.empty()){Point pt=queue.front();queue.pop();Point points[4]={,Point(pt.r-1,pt.c),Point(pt.r,pt.c+1),Point(pt.r,pt.c-1)};for(autop:points){if(is_valid(image,p,prev_color,new_color)){;;}}}}intmain(){charimage[ROWS][COLS]={{'g','g','g','g','g','g','g','g'},{'g','g','g','g','g','g','r','r'},{'g','r','r','g','g','r','g','g'},{'g','b','b','b','b','r','g','r'},{'g','g','g','b','b','r','g','r'},{'g','g','g','b','b','b','b','r'},{'g','g','g','g','g','b','g','g'},{'g','g','g','g','g','b','b','g'}};Pointcur(4,4);charnew_color='y';flood_fill(image,cur,new_color);for(intr=0;r<ROWS;r++){for(intc=0;c<COLS;c++){cout<<image[r][c]<<'';}cout<<endl;}//输出:// g g g g g g g g// g g g g g g r r// g r r g g r g g// g y y y y r g r// g g g y y r g r// g g g y y y y r// g g g g g y g g// g g g g g y y greturn0;}

①~⑤处应填( )

  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))

答案

  1. A
  2. B
  3. C
  4. D
  5. A

解析:洪水填充:is_valid 判断像素颜色等于原始颜色且不等于新颜色,故①为image[r][c] == prev_color。开始填充前先把起始点颜色改为新颜色,故②为image[cur.r][cur.c] = new_color。四个方向包括上、下、左、右,数组 points 的第一个应为下(行+1),即Point(pt.r+1, pt.c),故③选 C。每访问一个有效点将其颜色改为新颜色,故④为image[p.r][p.c] = new_color,然后入队,⑤为queue.push(p)

更多内容请关注专栏:信奥赛C++普及组csp-j初赛&复赛真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转


【秘籍汇总】(完整csp信奥赛C++学习资料):

1、csp/信奥赛C++,完整信奥赛系列课程(永久学习):

https://edu.csdn.net/lecturer/7901 点击跳转

2、CSP信奥赛C++竞赛拿奖视频课:

https://edu.csdn.net/course/detail/40437 点击跳转

https://edu.csdn.net/course/detail/41081 点击跳转

3、csp信奥赛高频考点知识详解及案例实践:

CSP信奥赛C++动态规划:
https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转

CSP信奥赛C++标准模板库STL:
https://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转

信奥赛C++提高组csp-s知识详解及案例实践:
https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转

4、csp信奥赛冲刺一等奖有效刷题题解:

信奥赛C++普及组CSP-J一等奖通关刷题题单及题解:
https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转

信奥赛C++普及组csp-j初赛&复赛真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转

信奥赛C++提高组csp-s初赛&复赛真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转

5、GESP C++考级真题题解:

GESP(C++ 一级+二级+三级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转

GESP(C++ 四级+五级+六级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转


GESP(C++ 七级+八级)真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转

· 文末祝福 ·

#include<bits/stdc++.h>usingnamespacestd;intmain(){cout<<"跟着王老师一起学习信奥赛C++";cout<<" 成就更好的自己! ";cout<<" csp信奥赛一等奖属于你! ";return0;}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/11 3:07:02

小鼠卫星胶质细胞 ( Satellite Glial Cells,SGCs) 简要实验 Protocol

一、实验耗材与试剂配制1. 实验材料SPF 级小鼠&#xff08;推荐新生 1–3 日乳鼠&#xff0c;细胞活力、纯度最优&#xff1b;成年小鼠亦可&#xff0c;细胞增殖偏弱&#xff09;、超净工作台、CO₂培养箱、体视显微镜、恒温水浴锅、低温离心机、70 μm 细胞筛、培养皿、离心管…

作者头像 李华
网站建设 2026/8/11 3:07:00

WebMCP On-Demand工具注册:用2个核心工具代理N个功能的架构实践

1. 从“工具海”到“工具池”&#xff1a;一个被忽视的WebMCP核心范式如果你最近在折腾AI Agent或者LLM应用开发&#xff0c;大概率听说过WebMCP&#xff08;Model Context Protocol&#xff09;这个协议。它被设计为连接LLM与外部工具和数据的桥梁&#xff0c;听起来很美好&am…

作者头像 李华
网站建设 2026/8/11 3:03:15

CVE与CWE:从漏洞应急到安全左移的完整认知框架

1. 从一次安全事件复盘说起&#xff1a;为什么我们既需要CVE&#xff0c;又需要CWE&#xff1f;前几天&#xff0c;团队内部复盘一个线上告警。开发同学指着漏洞扫描报告里的“CVE-2023-12345”问我&#xff1a;“这个漏洞的修复方案我看了&#xff0c;就是升级依赖版本。但我想…

作者头像 李华
网站建设 2026/8/11 3:02:19

煤矿低浓度瓦斯治理技术与安全防控实践

1. 低浓度瓦斯治理的安全核心逻辑在煤矿开采领域&#xff0c;瓦斯治理始终是安全生产的重中之重。我从事矿井安全管理工作十余年&#xff0c;处理过低浓度瓦斯引发的各类险情23起&#xff0c;最深切的体会是&#xff1a;当瓦斯浓度处于1%-3%这个区间时&#xff0c;其危险性往往…

作者头像 李华
网站建设 2026/8/11 3:02:10

乙类推挽电路发射极静态电位形成机制与稳定性设计详解

大家好&#xff0c;我是专注于硬件电路设计的博主。在设计和调试音频功放、开关电源驱动等电路时&#xff0c;乙类推挽&#xff08;Class B Push-Pull&#xff09;电路是一个经典且高效的结构。然而&#xff0c;很多初学者&#xff0c;甚至有一定经验的工程师&#xff0c;都会对…

作者头像 李华
网站建设 2026/8/11 3:01:34

绩效体系:战略地图与目标分解方法

导读&#xff1a;很多企业的绩效指标是从各部门"上报"来的&#xff0c;部门报什么就考什么&#xff0c;结果指标之间各自为政&#xff0c;跟公司战略毫无关系。战略地图的意义在于&#xff0c;它提供了一套从公司战略到部门目标再到岗位指标的系统性分解方法&#xf…

作者头像 李华