CCF画图

2023-05-16

#include <stdio.h>

struct rectStruct{
    int a,b;
    int m, n;
};
struct rectStruct rects[100];
int rectS = 0;
int n;

int inYLine(int a, int ID);
int inXLine(int a, int ID);
int inRect(int x, int y, int ID);
void coincidentS(int a, int b, int m, int n, int ID);
void computeS();
void runRect(int ID);
int main(void) {
    // 将矩形
    // 遍历每一个矩形
    // 然后遍历每一个矩形中的每一个小方块
    // 判断这个小方块 属不属于其他矩形
    int i = 0;
    int s = 0;
    // printf("%d\n", n);
    scanf("%d", &n);
    // printf("输出数目1:%d\n", n);
    //将数据输入
    for(i = 0; i < n; i++) {
        scanf("%d %d %d %d", &rects[i].a, &rects[i].b, &rects[i].m, &rects[i].n);
    }

    computeS();
    return 0;
}

void computeS() {
    // 遍历每一个矩形
    int i = 0;
    int s = 0;

    for(i = 0; i < n; i++) {
        // 遍历矩形的内部
        // printf("第三个有没有输出n:%d\n", i);
        runRect(i);
    }

    printf("%d", rectS);
}
void runRect(int ID) {
    // 看矩形里面的小矩形, 被几个矩形所占有
    // 先得到这个小矩形
    // 比如(1, 1)和(4, 4)
    // 第一个小矩形是(1, 1) (2, 2)/ (2, 1) (3, 2)
    int i, j;
    int startW = rects[ID].a;
    int finalW = rects[ID].m - 1;
    int startH = rects[ID].b;
    int finalH = rects[ID].n - 1;
    for(j = startH; j <= finalH; j++) {
        for(i = startW; i <= finalW; i++) {
            coincidentS(i, j, i+1, j+1, ID);
        }
    }
}
void coincidentS(int a, int b, int x, int y, int ID) {
    // 只检查ID之前的,
    int i;
    for(i = ID-1; i > -1; i--) {
        // printf("Output ID :%d\n", i);
        if(inRect(a, b, i) && inRect(x, y, i)) {
            break;
        }
    }
    if(i <= -1) {
        rectS++;
    }
}
int inRect(int x, int y, int ID) {
    return inXLine(x, ID) && inYLine(y, ID);
}
int inXLine(int a, int ID) {
    int in = (a - rects[ID].a) * (a - rects[ID].m);
    return in <= 0;
}
int inYLine(int a, int ID) {
    int in = (a - rects[ID].b) * (a - rects[ID].n);
    return in <= 0;
}

写着写着, 好像就想起来萧大强调的思想, 写程序是从上往下写的, 所以当我这个程序判断, 这个小矩形是不是在之前的矩形的时候, 就看左下角的点, 和又下角的点在不在.(这是一个函数吧), 之后看这个点在不在, 就看x在不在y在不在(这又是一个函数).这些函数, 还可以单独拿出来测试, 也不会影响别的代码.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CCF画图 的相关文章

  • CCF-CSP【202303-3 LDAP】C++

    CCF CSP 202303 3 LDAP C 43 43 CCF真题网址 第一次提交结果超时 只有20分 题目思路 我的思路较为简单 xff0c 即对于每个匹配表达式 xff0c 遍历N个用户 xff0c 验证是否匹配 对于每个表达式有两
  • CCF 201812-4 数据中心 Java

    一 题目 问题描述 试题编号 xff1a 201812 4试题名称 xff1a 数据中心时间限制 xff1a 1 0s内存限制 xff1a 512 0MB问题描述 xff1a 样例输入 4 5 1 1 2 3 1 3 4 1 4 5 2 3
  • 【CCF-CSP】201409-4 最优配餐 C++

    文章目录 一 题目二 解题1 题目2 代码3 提交结果 总结1 代码思路 一 题目 原题目链接 二 解题 1 题目 一个BFS xff08 宽度优先搜索 xff09 的实现 xff0c 用于处理迷宫中的节点 下面是代码的详细解释 xff1a
  • CCF认证期末预测之最佳阈值

    期末预测之最佳阈值 题目描述 具体来说 xff0c 顿顿评估了 m m m 位同学上学期的安全指数 xff0c 其中第 i 1
  • CCF画图

    include lt stdio h gt struct rectStruct int a b int m n struct rectStruct rects 100 int rectS 61 0 int n int inYLine int
  • CCF-CSP考试介绍以及复习技巧指导

    CCF CSP考试时间及费用 时间一般是每年3 9 12月的中旬 xff0c 报名时间一般也是提前一个月 xff0c 不固定 非计算机协会会员300元 次 xff0c 会员180元 次 xff08 学生会员需缴纳50元 年的会费 xff09
  • ccf认证的期刊和会议_ccf推荐AI、CV方向的国际学术期刊、会议

    写在前面 xff1a 本篇文章摘自公众号 算法攻城狮 中国计算机学会官方 https www ccf org cn 公布了十个领域的国际期刊及会议信息 xff0c 这十个领域分别为 xff1a 1 计算机体系结构 xff0f 高性能计算 x
  • C++ CCF真题----画图

    问题描述 用 ASCII 字符来画图是一件有趣的事情 xff0c 并形成了一门被称为 ASCII Art 的艺术 例如 xff0c 下图是用 ASCII 字符画出来的 CSPRO 字样 本题要求编程实现一个用 ASCII 字符来画图的程序
  • CCF CSP 2021-04-2 邻域均值 题解及满分代码(C++11)

    文章目录 题目描述问题分析70分解法满分解法 题目描述 现给定邻域参数 r 和阈值 t xff0c 试统计输入灰度图像中有多少像素处于较暗区域 输入格式 输入共 n 43 1 行 输入的第一行包含四个用空格分隔的正整数 n L r 和 t
  • CCF_Markdown(正则表达式)

    试题编号 xff1a 201703 3试题名称 xff1a Markdown时间限制 xff1a 1 0s内存限制 xff1a 256 0MB问题描述 xff1a 问题描述 Markdown 是一种很流行的轻量级标记语言 xff08 lig
  • 2020 CCF 非专业级别软件能力认证第一轮(CSP-S) 提高级 C++ 语言试题

    目录 一 选择题 xff1a 每题 2 分 xff0c 共 15 题 xff0c 30 分 在每小题给出的四个选项中 xff0c 只有一项是符合题目要求的 二 阅读程序 程序输入不超过数组或字符串定义的范围 xff1b 判断题正确填 3 x
  • html+css+js手写练习-仿CCF注册和登录页面

    直接贴代码 xff1a lt DOCTYPE html gt lt html gt lt head gt lt meta charset 61 34 utf 8 34 gt lt title gt 中国计算机学会 注册 lt title g
  • ccf-csp认证期末预测之最佳阈值(2020年12月13日)

    期末预测之最佳阈值 题目描述 具体来说 顿顿评估了 位同学上学期的安全指数 其中第 1 位同学的安全指数为 是一个 0 108 范围内的整数 同时 该同学上学期的挂科情况记作 0 1 其中 0 表示挂科 1 表示未挂科 相应地 顿顿用 表示
  • CCF计算机软件能力认证历年真题+超详细解析(C语言)

    这个历年试题解主要使用C语言编写 针对较为简单的第一题和第二题 适合初学者 程序中基本附有注释 希望可以帮到大家 会持续进行补充 欢迎评论区给出更好的解法与思路 2021 12 第 24次 202112 1序列查询 202112 2序列查询
  • CCF计算机软件能力认证 C++ 权限查询

    问题描述 授权 authorization 是各类业务系统不可缺少的组成部分 系统用户通过授权机制获得系统中各个模块的操作权限 本题中的授权机制是这样设计的 每位用户具有若干角色 每种角色具有若干权限 例如 用户 david 具有 mana
  • CCF/CSP 201409-3 字符串匹配(满分题解Java版)

    此题虽然放在了第三题 但是如果对Java的API了解的比较好的同学 解这道题一点都不难 比前几题都要简单一些 题目描述 官方题目地址 读题请点击 Java满分题解 import java util Scanner next 与 nextLi
  • CCF-CSP真题《202305-1 重复局面》思路+python,c++满分题解

    想查看其他题的真题及题解的同学可以前往查看 CCF CSP真题附题解大全 试题编号 202305 1 试题名称 重复局面 时间限制 1 0s 内存限制 512 0MB 问题描述 题目背景 国际象棋在对局时 同一局面连续或间断出现3次或3次以
  • csp试题1:小明种苹果

    csp试题1 小明种苹果 题目 分析 代码 总结 题目 题目描述 小明在他的果园里种了一些苹果树 为了保证苹果的品质 在种植过程中要进行若干轮疏果操作 也就是提前从树上把不好的苹果去掉 第一轮疏果操作开始前 小明记录了每棵树上苹果的个数 每
  • ccf-201412-3 集合竞价(详解)

    ccf 201412 3 集合竞价 详解 试题编号 201412 3 试题名称 集合竞价 时间限制 1 0s 内存限制 256 0MB 问题描述 问题描述 某股票交易所请你编写一个程序 根据开盘前客户提交的订单来确定某特定股票的开盘价和开盘
  • 第十六次CCF认证模拟试题(201903-2):二十四点(Java完整版)

    最近在练习算法 觉得CCF的算法题都还不错 就做了一下子 试卷原题 Java版解法 import java util ArrayList import java util Scanner public class Main public s

随机推荐

  • SQL Server 通过SQL生成Java代码 (为了省事写的生成实体类中属性)

    SELECT 字段名 61 a name 类型 61 b name 字段说明 61 isnull g value 39 39 CONVERT VARCHAR 100 a name AS colname CONVERT VARCHAR 100
  • C++编译器VS2019和MinGW的问题

    C 43 43 编译器VS2019和MinGW的问题 xff1a 最近在啃C 43 43 Primer这本书 xff0c 在学习到第14章重载运算符时 xff0c 准备为自定义的类String重载一个输入运算符 gt gt xff0c 代码
  • 物理机debian环境搭建

    装系统全程ob腾哥配置 xff0c 记录一下 1 首先需要一个刻录u盘 xff0c 格式化 2 下载u盘刻录软件 xff0c refus 3 到镜像站或官网下载debian iso 4 插入u盘 xff0c 进行刻录 5 到电脑插入u盘 x
  • PYTHON简单代码去除TXT文档重复行内容去重复

    PYTHON简单代码去除TXT文档重复行内容去重复 fi span class token operator 61 span span class token builtin open span span class token punct
  • c语言嵌套结构体内存对齐

    结构体内存对齐规则 xff1a 1 第一个成员在结构体变量偏移量为0 的地址处 2 其他成员变量要对齐到某个数字 xff08 对齐数 xff09 的整数倍的地址处 对齐数 61 编译器默认的一个对齐数与该成员大小中的较小值 vs中默认值是8
  • ubuntu简单设置代理的办法

    直接输入命令 span class token builtin class name export span span class token assign left variable http proxy span span class
  • DockerFile集成mysql,nginx,zookeeper,redis,tomcat为一个镜像

    将mysql nginx zookeeper redis tomcat集成为一个docker镜像 实现运行一个镜像 xff0c 便全部自动化安装启动mysql nginx zookeeper redis tomcat 1 在CentOS7上
  • Squid反向手动编译--Debian10.x

    Squid反向手动编译 Debian10 x 实验环境 xff1a server01 xff1a 192 168 10 10 CA证书 DNS服务器 server02 xff1a 192 168 10 20 squid服务器 需要做ssl
  • Ubuntu18.04 intel wifi6 ax201无线网卡驱动安装

    Ubuntu18 04 intel wifi6 ax201无线网卡驱动安装 前言 新买的笔记本电脑装Ubuntu系统 xff0c 发现没有无线网卡 xff0c 经查阅资料发现由于网卡刚没多久 xff0c Ubuntu没有集成网卡驱动 xff
  • 目标检测: 数据集转换txt转为xml格式

    目录 1 txt数据集格式 2 xml数据集格式 3 转换代码 4 根据xml标签分割出图像中的目标物体 5 效果展示 1 txt数据集格式 第1元素代表类别 xff0c 第2 xff0c 3表示目标框的中心位置 xff0c 第4 xff0
  • ubuntu无线优先上网

    https blog csdn net wbcuc article details 116073622 如果电脑同时连着有线网络跟无线 Wifi 网络 xff0c 系统会默认 优先 使用有线网络 xff0c 即使用有线网络的网关作为默认路由
  • 扩展欧几里得

    转自 xff1a http www cnblogs com frog112111 archive 2012 08 19 2646012 html 欧几里德算法 欧几里德算法又称辗转相除法 xff0c 用于计算两个整数a b的最大公约数 基本
  • 扫描局域网在线IP

    wlan0为终端运行ifconfig后的网络名称 sudo apt get install arp scan sudo arp scan I wlan0 localnet
  • 英伟达TX2开箱入门 ubuntu16.04用sdkmanager刷机(JetPack4.2版本)

    英伟达TX2开箱入门 ubuntu16 04用sdkmanager刷机 xff08 JetPack4 2版本 xff09 准备工作系统版本参考博客 装机步骤一 硬件连接 43 开机二 刷机教程 xff08 附官网教程 xff09 准备工作
  • 可以ping通但ssh: connect to host 192.168.0.27 port 22: Connection refused

    前言 SSH分客户端openssh client和服务器openssh server 如果你只是想登陆别的机器 xff0c 只需要安装openssh client xff08 ubuntu有默认安装 xff0c 如果没有则sudo apt
  • ROS发布静态tf变换

    方法一 xff1a include lt ros ros h gt include lt tf transform broadcaster h gt int main int argc char argv ros init argc arg
  • ROS常见问题及解决方法

    1 undefined reference to 96 tf TransformBroadcaster TransformBroadcaster 问题描述 xff1a CMakeFiles imu data dir src imu data
  • git的配置管理 配置用户名、邮箱

    git是现在常用的版本管理工具 xff0c 在使用git操作代码时 xff0c 可以保留操作痕迹 xff0c 查看是谁操作的 xff0c 这时候就需要提前设置git的操作用户信息 git配置文件 git的配置文件有三份 xff0c 按照优先
  • IOS学习之—— xib的用法--自定义View

    05 xib的用法 自定义View 自定义View xib的用法 项目名称 xff1a 设置文件头 滚动广告 五张图片 步骤 xff08 1 xff09 创建 新文件 userInterface 中的 empty 文件 取名CZHeader
  • CCF画图

    include lt stdio h gt struct rectStruct int a b int m n struct rectStruct rects 100 int rectS 61 0 int n int inYLine int