问题描述

就是这个题,输入与输出格式不再罗列,题目目的大概意思为:给定一个小的地图B,在一个大的地图A中找到B,也就是B是A的子图,求有几个这样的子图。

ccf的第二题给定的限制时间和空间都很大,所以在这题中也没有什么算法,简单的for循环一一去对比,但是为什么要写这个题呢?我写的时候写了三次都没得到满分,这还是ccf的第二题,所以就找原因,发现这个题在满分的数据测试上数据量特别大,大到程序运行不了,我才发现思路错了,出题人意在告诉你可以土方法去做,但是你必须有一个有效的存储形式,这是做这道题感觉到的。编写的过程中遇到的问题是:为了去满足全部的数据测试去见二维数组时明显是不行的(L最大为十的九次方),所以用到一个n的数组存放就能解决了。附上100分代码:

#include<iostream>
using namespace std;int map1[55][55] = { 0 };//地图Bstruct MyStruct
{int x;int y;
};struct MyStruct Ms[1050];//记录地图A的树位置int main()
{int n = 0, S = 0, L = 0;cin >> n >> L >> S;int t_x = 0, t_y = 0;for (int i = 0; i < n; i++){cin >> t_x >> t_y;Ms[i].x = t_x;Ms[i].y = t_y;}for (int i = S; i >= 0; i--){for (int j = 0; j <= S; j++){cin >> map1[i][j];}}int sum = 0;//以下是比较过程for (int k = 0; k < n; k++){int flag = 1;for (int i = 0; i <= S; i++){for (int j = 0; j <= S; j++){if (Ms[k].x + i > L || Ms[k].y + j > L){flag = 0;break;}if (map1[i][j] == 1){flag = 0;for (int l = 0; l < n; l++){if (Ms[l].x == Ms[k].x + i && Ms[l].y == Ms[k].y + j){flag = 1;break;}}if (flag == 0)break;}if (map1[i][j] == 0){for (int l = 0; l < n; l++){if (Ms[l].x == Ms[k].x + i && Ms[l].y == Ms[k].y + j){flag = 0;break;}}if (flag == 0)break;}}if (flag==0)break;}if(flag==1)sum++;}cout << sum << endl;return 0;
}

比较过程比较繁琐,有问题欢迎指正!

ccfcsp 202206-2 寻宝大冒险相关推荐

  1. CSP 202206 题解:归一化处理,寻宝大冒险,角色授权,光线追踪,PS无限版

    试题内容请前往CCF官网查看: CCF-CSP计算机软件能力认证考试 http://118.190.20.162/home.page 阅读本题解前,您应当了解下列知识: 线段树 教程 C++ 标准库( ...

  2. 2022-6-2寻宝大冒险(不用前缀和与map,c/c++实测满分)

    总结: 离散点对应回稀疏矩阵时可以分块处理,根据限制条件筛选掉不必处理的块,缩短计算时间. 一.题目要求 题目背景 暑假要到了.可惜由于种种原因,小 P 原本的出游计划取消.失望的小 P 只能留在西西 ...

  3. ccf寻宝!大冒险!python满分(敲开心~)

    寻宝 大冒险 题目传送:http://118.190.20.162/view.page?gpid=T147 思路及代码: 核心点就是哈希. 之前刷的是70分,找不到之前的代码了,大概是建了一个很大的表 ...

  4. CCF- CSP 202206-2寻宝!大冒险!暴力算法满分题解

    CCF- CSP 202206-2寻宝!大冒险!暴力算法满分题解 题目链接:202206-2寻宝!大冒险! 思路: 数据范围中n ≤ \leq ≤ 1000,S ≤ \leq ≤ 50,考虑时间复杂度 ...

  5. CSP 寻宝!大冒险! C++

    CSP 寻宝!大冒险! C++ 思路:遍历绿化图的每个树,先判断藏宝图里树的数量和当前树的右上边长为s的正方形的树的数量是否一致,如果一致,再循环遍历判断是否相等. #include<bits/ ...

  6. ccf csp寻宝!大冒险!(C语言)

    ccf csp寻宝!大冒险! 题目背景 暑假要到了.可惜由于种种原因,小 P 原本的出游计划取消.失望的小 P 只能留在西西艾弗岛上度过一个略显单调的假期--直到-- 某天,小 P 获得了一张神秘的藏 ...

  7. 4510. 寻宝!大冒险!

    Powered by:NEFU AB-IN Link 文章目录 4510. 寻宝!大冒险! 题意 思路 代码 4510. 寻宝!大冒险! 题意 第26次CCF计算机软件能力认证 题目略 简短版:有一个 ...

  8. ~1 ccf 2022-06-2 寻宝!大冒险!

    寻宝!大冒险! 题目描述 输入 输出 样例输入 样例输出 子任务 源代码 关于这题 题目描述 输入 输出 样例输入 样例一: 5 100 2 0 0 1 1 2 2 3 3 4 4 0 0 1 0 1 ...

  9. 【寒假每日一题】AcWing 4510. 寻宝!大冒险!

    目录 一.题目 1.原题链接 2.题目描述 二.解题报告 1.思路分析 2.时间复杂度 3.代码详解 一.题目 1.原题链接 4510. 寻宝!大冒险! - AcWing题库 2.题目描述 暑假要到了 ...

最新文章

  1. Nginx一点事儿(一)
  2. Git中的Sign Off功能是什么?
  3. 【Redis】2、CentOS 7 上安装 redis3.2.3安装与配置
  4. python无法启动该程序因为计算机中丢失_python报错:无法启动此程序,因为计算机中丢失...
  5. jquery json学习
  6. 2015年第六届蓝桥杯C/C++ B组国赛 —— 第一题:积分之迷
  7. win7纯净版下载csdn_win10原版纯净版下载,安装技巧
  8. Java实现将日志信息存到TXT中
  9. CSS文本溢出的处理方法总结
  10. N皇后问题(暴力法、回溯法)
  11. php返回图片二进制字节数组,获取图片文件的二进制数组
  12. 读书笔记∣商务与经济统计Ch.1-3
  13. HTTP1.0 HTTP1.1 HTTP2.0 主要特性对比
  14. 安卓模拟器调试GPS
  15. C语言 冒泡排序 程序流程图,C语言冒泡排序及流程图(思路解析)
  16. oracle odi 资料档案库访问期间出现未分类的异常错误,ODI11g调用DBLink时报ORA-28267: Invalid NameSpace Value错误...
  17. 【PHPWord】PHPWord导出PDF格式文件的几种方式以及最优解并附代码
  18. linux系统双显示器怎么设置复制,在 Linux 中配置双显示器
  19. flv转mp4(ffmpeg)
  20. An improved genetic algorithm for the flexible job shop scheduling problem with multiple time constr

热门文章

  1. 计算机用户域怎么删除,如何删除域内非活动计算机账号?
  2. 学生个人网页制作成品
  3. 【转帖-美文欣赏】江南
  4. 扇贝编程python学习笔记-基础篇3
  5. 非常规手段免疫U盘病毒(Autorun.inf)
  6. 从废弃塑料瓶到鼠标,微软海洋环保鼠标背后不一般的工程实践
  7. 用ajax做级联操作,学习笔记之MVC级联及Ajax操作
  8. 共享打印机(联想M7605D)出现0x00000709错误代码的解决方法
  9. 试算平衡表示例图_试算平衡表的编制步骤是什么?
  10. 矩阵理论——内积空间