CCP-CSP 201909-3 字符画 100

2023-05-16

原题链接:CCP-CSP 201909-3 字符画
在这里插入图片描述
这道题我觉得难点主要是不会处理ASCII码的转换,还有就是看不懂题,其实逻辑不难。

参考博客:CCF CSP 20190903 字符画 100分

#include <bits/stdc++.h>
using namespace std;

int block[2000][2000][3];
int cal(char c1,char c2)
{
    int res=0;
    if(c1>='a') res+=(c1-'a'+10)*16;
    else  res+=(c1-'0')*16;
    if(c2>='a') res+=(c2-'a'+10);
    else  res+=(c2-'0');
    return res;
}

string change(int num)
{
    stringstream ss;
    ss<<num;
    string s;
    ss>>s;
    ss.clear();
    for(int i=0;i<s.size();i++)
    {
        ss<<"\\x";
        ss<<hex<<setw(2)<<uppercase<<(int)s[i];
    }
    ss>>s;
    return s;
}

int main()
{
    std::ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int m,n,p,q;
    cin>>m>>n;
    cin>>p>>q;
    string s;
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
            cin>>s;
            s=s.substr(1);
            int a,b,c;
            if(s.size()==6)
            {
                a=cal(s[0],s[1]); b=cal(s[2],s[3]); c=cal(s[4],s[5]);
            }
            else if(s.size()==3)
            {
                 a=cal(s[0],s[0]); b=cal(s[1],s[1]); c=cal(s[2],s[2]);
            }
            else if(s.size()==1)
            {
                a=cal(s[0],s[0]); b=a; c=a;
            }
            block[i][j][0]=a; block[i][j][1]=b; block[i][j][2]=c;
        }
    }
    int row=n/q,col=m/p;
    string s1,s2,s3;
    int p1=0,p2=0,p3=0;
    for(int i=0;i<row;i++)
    {
        p1=0,p2=0,p3=0;
        for(int j=0;j<col;j++)
        {
            int r=0,g=0,b=0;
            for(int k=i*q;k<(i+1)*q;k++)
            {
                for(int h=j*p;h<(j+1)*p;h++)
                {
                    r+=block[k][h][0];
                    g+=block[k][h][1];
                    b+=block[k][h][2];
                }
            }
            r/=(p*q); g/=(p*q); b/=(p*q);
            s1=change(r); s2=change(g); s3=change(b);
            if(!(r==p1 && g==p2 && b==p3))
            {
                if(r==0 && g==0 && b==0)
                {
                    cout<<"\\x1B\\x5B\\x30\\x6D";
                }
                else
                {
                    cout<<"\\x1B\\x5B\\x34\\x38\\x3B\\x32\\x3B"<<s1<<"\\x3B"<<s2<<"\\x3B"<<s3<<"\\x6D";
                }
            }
            cout<<"\\x20";//空格
            if(j==col-1 && !( r==0 && g==0 && b==0 ))
            {
                cout<<"\\x1B\\x5B\\x30\\x6D";
            }
            p1=r,p2=g,p3=b;
        }
        cout<<"\\x0A";//换行
    }
	return 0;
}


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

CCP-CSP 201909-3 字符画 100 的相关文章

  • AAC高级音频编码

    AAC 的支持现状 目前支持 AAC 的产品还比较少 xff0c 这主要是因为专利使用费大大限制了 AAC 的发展 xff01 不过好在有索尼 诺基亚 苹果 松下四大巨头的鼎力支持 xff0c 场面还不算冷清 重量级的 iPod 和 iPo
  • 三种做法——判断给定的字符序列是否是回文,回文是指一个字符序列以中间字符为基础,两边字符忽略大小写完全相同

    判断给定的字符序列是否是回文 xff0c 回文是指一个字符序列以中间字符为基础 xff0c 两边字符忽略大小写完全相同 xff08 10分 xff09 判断回文多种方法 xff1a 不值得推荐方法 xff1a 纯死脑筋做法 span cla
  • word文件转md文件

    文章目录 一 下载pandoc二 pandoc转换1 cmd进入文件夹2 代码实现 一 下载pandoc 建议使用msi直接安装 xff0c 而不是下载安装包直接使用 xff0c msi的下载方法 xff1a 安装方法 二 pandoc转换
  • JavaScript中定义结构体一维二维多维数组

    相信学过C语言的开发者刚接触JavaScript时都会很不习惯 xff0c C语言中的虽然是结构化面向过程的编程语言 xff0c 但是C语言中也有封装的思想 xff0c 例如C语言结构体和公用体等 xff0c 在他们中都可以直接定义变量 C
  • does not name a type报错的改正方式

    does not name a type报错的改正方式 原代码如下 xff1a 报错 xff1a does not name a type 原因 xff1a 不知道 改正方法 xff1a 把初始化放主函数外面 xff0c 赋值放主函数里面
  • ERROR: Cause: unable to find valid certification path to requested target终极解决方法

    ERROR Cause unable to find valid certification path to requested target终极解决方法 2022 09 20 更新一下 xff1a 报这个错主要是因为网络问题 xff0c
  • yum安装ansible报错如何解决

    yum安装ansible报错解决方案 一 报错信息 xff1a 二 如何解决1 重装虚拟机2 修改yum源3 使用EPEL源4 安装ansible5 测试 文章参考 xff1a https mirrors tuna tsinghua edu
  • FORTRAN基础编程(1)——基本格式及读入输出

    FORTRAN基础编程 xff08 1 xff09 基本格式及输出 读入 文章目录 FORTRAN基础编程 xff08 1 xff09 基本格式及输出 读入书面格式一 Fixed Format 固定格式 二 Free Format 自由格式
  • Anaconda3-2022.05安装与环境配置

    文章目录 1 Anaconda下载方式一 xff1a Anacoda官网下载方式二 xff1a 国内镜像下载 2 Anaconda安装3 Anaconda环境变量配置4 测试是否配置成功 1 Anaconda下载 方式一 xff1a Ana
  • 解题笔记——救援

    解题笔记 救援 救生船从大本营出发 xff0c 营救若干屋顶上的人回到大本营 xff0c 屋顶数目以及每个屋顶的坐标和人数都将由输入决定 xff0c 求出所有人都到达大本营并登陆所用的时间 在直角坐标系的原点是大本营 xff0c 救生船每次
  • 【千奇百怪】java自定义spotbugs检测器

    前两天 xff0c 在对一个代码质量检测平台维护的时候 xff0c 遇到了一个新添加指定规则集的需求 xff0c 在经过一番折腾后否定掉了基于 ANTLR 实现自定义规则 xff1b 基于 CheckStyle 实现自定义规则 xff1b
  • win10深度学习环境配置

    nvidia驱动以及cuda的安装与卸载 下载cuda和对应的cudnn nvidia官网 直接在搜索栏搜索想要下载的版本 xff0c cuda11 x和cudnn11 x 首先安装cuda 安装cuda会自动安装相对应的显卡驱动 xff0
  • 【CCF-CSP】201312-1 出现次数最多的数 C++

    文章目录 一 题目二 解题1 题目解释1 出现次数最多的数2 如果这样的数有多个 xff0c 请输出其中最小的一个 2 代码3 提交结果 三 总结1 代码思路 xff1a 2 其他 一 题目 题目原始链接 xff1a http 118 19
  • 【CCF-CSP】201403-1 相反数 C++

    文章目录 一 题目二 使用步骤1 解题2 代码3 提交结果 总结1 代码思路2 其他 一 题目 原题目链接 二 使用步骤 1 解题 求相反数的队数 xff0c 可以利用相反数的绝对值相等的思路来解题 2 代码 dev c 43 43 5 1
  • 【CCF-CSP】201409-4 最优配餐 C++

    文章目录 一 题目二 解题1 题目2 代码3 提交结果 总结1 代码思路 一 题目 原题目链接 二 解题 1 题目 一个BFS xff08 宽度优先搜索 xff09 的实现 xff0c 用于处理迷宫中的节点 下面是代码的详细解释 xff1a
  • 【CCF-CSP】201412-2 Z字形扫描 C++

    文章目录 一 题目二 解题1 核心2 代码3 提交结果 总结 一 题目 原题目链接 二 解题 1 核心 一个关于矩阵的遍历输出算法 具体来说 xff0c 输出的是一个n n的矩阵z中的所有元素 内层循环的意思是 xff1a 在外层循环中确定
  • 【CCF-CSP】 201604-4 游戏

    文章目录 一 题目二 解题1 题目2 代码3 提交结果 总结1 注意边界 一 题目 原题目链接 二 解题 1 题目 类似于迷宫问题 xff0c 假设有一个n行m列的矩阵 xff0c 其中的一些格子是障碍物 xff0c 机器人从 xff08
  • 碰撞的小球 201803-2 C++

    文章目录 一 题目二 解题1 题目2 代码3 提交结果 总结1 解释 一 题目 原题目链接 二 解题 1 题目 这段代码通过模拟小球在一维轴上的运动来解决碰撞小球问题 它读入小球的数量 n xff0c 轴的长度 L 和运动的时间 t xff
  • 风险人群筛查 202009-2 C++

    文章目录 一 题目二 解题1 题目2 代码3 提交结果 总结1 解释 一 题目 原题目链接 二 解题 1 题目 这个程序解决了一个计数问题 它读取一些输入值 xff0c 包括n k t xl yd xr和yu 其中 xff0c n表示人数
  • 如此编码 202209-1 C++

    文章目录 一 题目二 解题1 题目2 代码3 提交结果 总结1 解释2 其他 一 题目 原题目链接 二 解题 1 题目 根据题目的提示 xff0c 我们已经知道m xff0c 需要求解的是b 那我们先求解c xff0c 然后再求解b 2 代

随机推荐

  • 期末预测之最佳阈值(类似前缀和的思想)

    题目 见https blog csdn net qq 45985728 article details 114903481 思路 我对此题没什么太好的思路 大概就只有暴力枚举混个70分吧 具体思路还是见上面的题目网址 代码 span cla
  • 阿里云服务器建站教程(从0到1)

    购买了阿里云服务器后 xff0c 需要一系列的配置 设置密码 首先 xff0c 点击右上角的 控制台 在左边找到 云服务器ESC xff0c 点击 可以看到有你刚刚购买的服务器 xff0c 点击进去 进入之后 xff0c 点击 更多 xff
  • 阿里云服务器建站教程

    第一步 xff1a 阿里云域名购买 需要到阿里云购买域名 xff1a 域名特惠专场 第二步 xff1a IPC备案 自行下载阿里云app进行IPC备案 xff0c 因为需要进行人脸验证 第三步 xff1a 购买服务器 购买服务器 xff1a
  • 树莓派3B+远程连接被拒或超时亦或屏幕无反应的登录方式

    报了一个大学生创新创业比赛 xff0c 计划做一个基于视觉识别的切菜机械臂 xff0c 毫无头绪 xff0c 于是先学树莓派吧 xff0c 入手3B 43 有一段时间了 xff0c 为了节约成本没有买屏幕 xff0c 几天后发现最大的问题就
  • 最大矩形(题解)

    题意 xff1a 给一个直方图 xff0c 求直方图中的最大矩形的面积 例如 xff0c 下面这个图片中直方图的高度从左到右分别是2 1 4 5 1 3 3 他们的宽都是1 xff0c 其中最大的矩形是阴影部分 思路 xff1a 对于每个高
  • python 工厂方法模式原理与实现

    一 简介 工厂模式是属于创建型模式 xff0c 它提供了一种创建对象的最佳方式 在工厂模式中 xff0c 我们在创建对象的过程中不会向客户端暴露实现逻辑 xff0c 而是通过一个共同的接口类来指向新创建的对象 二 工厂方法模式的主要角色 抽
  • Python安装Jupyter Notebook配置使用教程

    原文见 xff1a https blog csdn net qq 27825451 article details 84427269 一 什么是jupyter 1 简介 xff1a jupyter notebook是一种 Web 应用 xf
  • 【Python学习】——实现文本的朗读(pyttsx3)

    import pyttsx3 engine pyttsx3 init engine say 三角形 engine runAndWait 1 导入第三方库 import pyttsx3 2 创建朗读器 engine pyttsx3 init
  • 啊啊啊啊啊,终于解决电脑hardlock.sys蓝屏问题啦,顺利下载modelsim软件

    最开始下载软件时 xff0c 电脑蓝屏 xff0c 以为是电脑储存空间不足 xff0c 换了1T固态硬盘之后 xff0c 问题还是没有解决 xff1b 从博客看经验贴 xff0c 需要进入安全模式后 xff0c 从别的笔记本电脑上复制har
  • 上课摸鱼必备 -- Vscode网页版的搭建教程

    上课摸鱼必备 Vscode网页版的搭建教程 文章目录 上课摸鱼必备 Vscode网页版的搭建教程前言 xff08 一 xff09 运行效果 xff08 二 xff09 基础配置1 下载code server到服务器上2 解压安装试运行 xf
  • 牛客练习赛50

    tokitsukaze and Connection 链接 xff1a https ac nowcoder com acm contest 12257 A 来源 xff1a 牛客网 题目描述 tokitsukaze有一个长度为n xff0c
  • ROS——创建工作空间和功能包并成功运行一个基本python文件

    文章目录 ROS文件系统的基本结构一 创建工作空间二 xff08 可选 xff09 创建功能包三 编写python代码四 调试运行代码正确运行Clion ROS文件系统的基本结构 x1f4c1 workspace xff08 ROS的工作空
  • 解决Server's certificate is not trusted

    要解决Server s certificate is not trusted 首先Ctrl 43 Alt 43 s找到settings单击进入 勾选
  • 解决:无法打开系统服务 提示“一个或多个Activex控件无法显示”

    问题 xff1a 电脑打开系统的服务时 xff0c 出现 一个或多个Activex 控件无法显示 的提示 xff0c 开始以为与IE设置有关 xff0c 试着在Internet 选项 gt 安全 xff0c 勾选了 允许ActiveX 控件
  • IDEA:yml不显示小绿叶图标

    IDEA xff1a yml不显示小绿叶图标 之前idea能识别yml文件 xff0c 后面再学习微服务时突然识别不了yml xff0c yml文件不显示小绿叶图标 xff0c yml文件中相关的提示功能也失效 xff0c 但以 yaml为
  • 安装Ubuntu时发现卡在一个地方点不动解决方法

    有很多小伙伴发现自己在VMware安装虚拟机时 xff0c 卡在一个页面不能点击 xff0c 拖动也不起作用 xff0c 一直卡在一个地方动不了 xff0c 真的气死人了 xff0c 总以为是电脑或者其他什么地方的问题 xff0c 移除然后
  • CSP 202112-5 极差路径12分暴力代码

    原题链接 xff1a CSP 202112 5 极差路径 span class token macro property span class token directive keyword include span span class
  • CCF-CSP 201809-3 元素选择器

    原题链接 xff1a CCF CSP 201809 3 元素选择器 参考题解 xff1a CCF201809 3 元素选择器 xff08 100分 xff09 文本处理 span class token macro property spa
  • CCP-CSP 201912-5 魔数 暴力25

    原题链接 xff1a CCP CSP 201912 5 魔数 线段树是写不来的 span class token macro property span class token directive hash span span class
  • CCP-CSP 201909-3 字符画 100

    原题链接 xff1a CCP CSP 201909 3 字符画 这道题我觉得难点主要是不会处理ASCII码的转换 xff0c 还有就是看不懂题 xff0c 其实逻辑不难 参考博客 xff1a CCF CSP 20190903 字符画 100