CCF-CSP第38次认证第二题——机器人复健指南(满分题解)

题目背景

西西艾弗岛某山脉深处出土了一台远古机器人,具体年代已不可考。初步修缮后,研究人员尝试操控机器人进行些简单的移动。

题目描述

整个实验场地被划分为 n×n个方格,从 (1,1) 到 (n,n) 进行编号。机器人只能在这些方格间移动,不能走出场地范围。 如下图所示,假设机器人当前位于 (x,y),那么接下来可以向周围八个方向跳跃移动(如果目标方格在场地范围内):

若机器人只能跳动不超过 k 步,场地内有多少方格(包括起始位置)可以抵达?

输入格式

从标准输入读入数据。

输入的第一行包含空格分隔的两个正整数 n 和 k,分别表示场地大小和跳动步数。

输入的第二行包含空格分隔的两个正整数 x 和 y,表示机器人的起始位置(保证位于场地内)。

输出格式

输出到标准输出。

输出一个整数,表示 k 步内可以抵达的方格总数。

样例1输入

4 1 1 1 

样例1输出

3 

样例2输入

4 2 1 1 

样例2输出

8 

样例2解释

如下图所示,初始位置、第一步和第二步跳跃抵达的位置总计为 8。

子任务

80% 的测试数据满足:k≤3;

全部的测试数据满足:n、k 均大于 0 且不超过 100。

题解

可以使用BFS或DFS进行搜索。在DFS实现中,步数作为递归函数的参数传递;而在BFS实现中,步数需要作为队列元素的附加参数存储。

实现细节

dx 和 dy 数组分别表示移动方向,st 数组用于记录访问状态,全局变量 cnt 统计已访问节点的数量。需要特别处理边界判断,同时统计的节点数包括所有经过的位置,而不仅仅是终点。

代码

#include<bits/stdc++.h> using namespace std; const int N=110; int n,k,x,y; int a[N][N]; bool st[N][N]; int dx[8]={1,2,1,2,-1,-2,-1,-2},dy[8]={2,1,-2,-1,2,1,-2,-1}; int cnt; void dfs(int x,int y,int num){ st[x][y]=true; cnt++; if(num==k)return; for(int i=0;i<8;i++){ int a=x+dx[i],b=y+dy[i]; if(a<1||a>n||b<1||b>n)continue; if(!st[a][b]){ dfs(a,b,num+1); } } } int main(){ cin>>n>>k>>x>>y; dfs(x,y,0); cout<<cnt; } 

Read more

Qwen3-VL与ComfyUI联动:实现AI绘画工作流自动标注

Qwen3-VL与ComfyUI联动:实现AI绘画工作流自动标注 在AI生成内容(AIGC)工具日益普及的今天,一个核心问题逐渐浮现:我们能轻松“画出”图像,但系统真的“理解”它所生成的内容吗?尤其是在Stable Diffusion等模型已经能产出高度复杂画面的当下,创作者往往面临这样的尴尬——明明输入的是“一只黑猫坐在窗台看雨”,结果却生成了“白狗趴在沙发上晒太阳”。更麻烦的是,这种偏差很难被自动发现,除非人工一张张检查。 这正是视觉-语言模型(VLM)的价值所在。而当我们将Qwen3-VL这一具备深度视觉理解能力的大模型,与ComfyUI这个以节点化著称的图像生成框架结合时,一种全新的智能创作范式便悄然成型:不仅让AI会画,还能让它“看懂”自己画了什么,并据此做出反馈、优化甚至决策。 从“生成即终点”到“可解释的生成” 传统AI绘画流程本质上是单向的:用户输入提示词 → 模型推理 → 输出图像。整个过程像一条封闭管道,缺乏对输出结果的语义感知和闭环校验。一旦生成偏离预期,只能靠经验反复调整提示词,效率低下且不可控。 而引入Qwen3-VL后,这条流程被打开了一道“认知

用Z-Image-Turbo做了个AI绘画项目,全过程公开

用Z-Image-Turbo做了个AI绘画项目,全过程公开 在本地跑通一个真正能用的文生图模型,到底有多难? 我试过手动下载30GB权重、被CUDA版本折磨到重装系统、为中文提示词失效反复调试CLIP分词器……直到遇见这个预置全部权重的Z-Image-Turbo镜像——从拉起环境到生成第一张高清图,只用了6分23秒。 这不是演示视频里的“跳过加载过程”,而是实打实的:不下载、不编译、不报错。你输入一句“敦煌飞天在赛博空间起舞”,9步之后,1024×1024的图像就躺在输出目录里,细节清晰得能看清飘带上的金箔纹路。 本文不讲原理、不堆参数,只记录一个普通开发者的真实项目落地全过程:怎么部署、怎么调参、怎么避坑、怎么把模型真正用进工作流。所有代码可复制、所有路径已验证、所有截图来自同一台RTX 4090D机器。 1. 为什么选Z-Image-Turbo而不是其他模型? 1.1 真正的“开箱即用”不是宣传语,是物理事实 很多镜像标榜“开箱即用”,但实际启动后第一件事还是等模型下载。而这个镜像的32.88GB权重文件,早已完整存放在/root/workspace/model_

vscode copilot 的配置文件提示警告

Claude 桌面版竟然是实时的。 vscode copilot 的配置文件提示 [{ “resource”: “/d:/.vscode/User/globalStorage/github.copilot-chat/ask-agent/Ask.agent.md”, “owner”: “prompts-diagnostics-provider”, “severity”: 4, “message”: “未知工具 “github/issue_read”。”, “startLineNumber”: 7, “startColumn”: 51, “endLineNumber”: 7, “endColumn”: 70 },{ “resource”: “/d:/.vscode/User/globalStorage/github.copilot-chat/ask-agent/Ask.agent.md”, “owner”: “prompts-diagnostics-provider”, “severity”: 4, “message”: “未知工具

AI 编程工具选型:Copilot、Cursor、Codex 核心差异

AI 编程工具选型:Copilot、Cursor、Codex 核心差异

【如文章引起大家共鸣,请“点赞”以及“转发”,以支持继续创作,谢谢大家!】 朋友们大家好!今天咱们不聊那些虚头巴脑的,直接来点实在的——AI编程工具选型,Copilot、Cursor、Codex这仨到底咋选?别急,我这就用最接地气的方式,给你唠唠它们的“脾气秉性”,保证你听完就能上手挑! 先说Copilot,这哥们儿可是“代码补全界的扛把子”!它就像你身边的“代码小秘书”,你敲代码时,它就在旁边默默观察,你刚敲个“for”,它立马给你补上“(int i=0;i<n;i++)”,那叫一个快!而且,它还支持多IDE,VS Code、JetBrains啥的,都能无缝对接。不过呢,Copilot也有个“小毛病”,就是它更擅长“补全”,对于复杂的代码重构或者项目级理解,就有点力不从心了。