CCF T3

news/2026/1/18 18:53:44/文章来源:https://www.cnblogs.com/MeltingPot/p/19498950

CCF T3

没什么太特殊的,注意到全局旋转操作复杂度太高,考虑打个懒标记进行局部旋转。(别忘了对翻转标记进行旋转,因为这么一个唐诗问题调了2h我也是神人了)

#include<bits/stdc++.h>
using namespace std;
const int N=500,M=5e5+10;
int m,n,tag,nn,mm;
int mov[M];
char ch[N][N];
struct Node{int opt,u,vd,Ll,dr,ro;
}op[M];
void Res(int pos){for(int t=tag%4;t;t--){int teml(op[pos].Ll),temr(op[pos].dr);op[pos].Ll=op[pos].u;op[pos].dr=op[pos].vd;op[pos].vd=n-teml+1;// 反的       op[pos].u=n-temr+1;op[pos].ro*=-1;}char buf[20][20];memset(buf,0,sizeof(buf));for(int i=op[pos].Ll;i<=op[pos].dr;++i){// liefor(int j=op[pos].u;j<=op[pos].vd;++j){ //cengbuf[j-op[pos].u+1][i-op[pos].Ll+1]=ch[j][i];}}if(~op[pos].ro){// 上下翻转int sum=op[pos].u+op[pos].vd;for(int i=op[pos].Ll;i<=op[pos].dr;++i){for(int j=op[pos].u;j<=op[pos].vd;++j){ch[j][i]=buf[sum-j-op[pos].u+1][i-op[pos].Ll+1];}}}else{// 左右翻转 int sum=op[pos].Ll+op[pos].dr;for(int i=op[pos].u;i<=op[pos].vd;++i){for(int j=op[pos].Ll;j<=op[pos].dr;++j){ch[i][j]=buf[i-op[pos].u+1][sum-j-op[pos].Ll+1];}}}
}
void Rol(int pos){tag+=op[pos].ro;for(int t=tag%4;t;t--){int temv(op[pos].vd);op[pos].vd=op[pos].u;op[pos].u=n-temv-op[pos].Ll+2;// 反的}char buf[20][20];memset(buf,0,sizeof(buf));for(int i=op[pos].u;i<=op[pos].u+op[pos].Ll-1;++i){for(int j=op[pos].vd;j<=op[pos].vd+op[pos].Ll-1;++j){int ii=i-op[pos].u+1,jj=j-op[pos].vd+1;buf[ii][jj]=ch[i][j];}}if(op[pos].dr==90){for(int i=op[pos].u;i<=op[pos].u+op[pos].Ll-1;++i){for(int j=op[pos].vd;j<=op[pos].vd+op[pos].Ll-1;++j){int ii=i-op[pos].u+1,jj=j-op[pos].vd+1;ch[i][j]=buf[jj][op[pos].Ll-ii+1];}}}else if(op[pos].dr==180){for(int i=op[pos].u;i<=op[pos].u+op[pos].Ll-1;++i){for(int j=op[pos].vd;j<=op[pos].vd+op[pos].Ll-1;++j){int ii=i-op[pos].u+1,jj=j-op[pos].vd+1;ch[i][j]=buf[op[pos].Ll-ii+1][op[pos].Ll-jj+1];}}}else{for(int i=op[pos].u;i<=op[pos].u+op[pos].Ll-1;++i){for(int j=op[pos].vd;j<=op[pos].vd+op[pos].Ll-1;++j){int ii=i-op[pos].u+1,jj=j-op[pos].vd+1;ch[i][j]=buf[op[pos].Ll-jj+1][ii];}}}
}
int main(){// freopen("2.in","r",stdin);// freopen("2.out","w",stdout);ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);cin>>n,mm=nn=n;for(int i=1;i<=n;++i){for(int j=1;j<=n;++j){cin>>ch[i][j];}}cin>>m;for(int i=1;i<=m;++i) cin>>mov[i];for(int i=2;i<=m;i+=6){op[i/6+1].opt=mov[i];op[i/6+1].u=mov[i+1];op[i/6+1].vd=mov[i+2];op[i/6+1].Ll=mov[i+3];op[i/6+1].dr=mov[i+4];op[i/6+1].ro=mov[i+5];}for(int i=mov[1];i;i--){if(op[i].opt==2) Res(i);else Rol(i);}char buf_[N][N];for(int t=tag%4;t;t--){memset(buf_,0,sizeof(buf_));for(int i=1;i<=n;++i){for(int j=1;j<=n;++j){buf_[i][j]=ch[i][j];}}for(int i=1;i<=n;++i){for(int j=1;j<=n;++j){ch[i][j]=buf_[n-j+1][i];}}}for(int j=1;j<=n;++j){if(ch[1][j]=='?'){mm=j-1;break;}}for(int i=1;i<=n;++i){if(ch[i][1]=='?'){nn=i-1;break;}}for(int i=1;i<=nn;++i){for(int j=1;j<=mm;++j) cout<<ch[i][j];cout<<endl;}
}
/* 
3
649
712
583
19
3 1 2 2 2 180 2 2 1 3 2 3 -1 1 2 2 2 90 1
*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1179135.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2026年国产时序数据库市场全景:从技术突破到行业落地

摘要&#xff1a; 进入2026年&#xff0c;在“数字中国”与工业物联网浪潮的强劲推动下&#xff0c;国产时序数据库市场持续繁荣&#xff0c;竞争格局日趋清晰。本文将对当前主流的国产时序数据库进行梳理盘点&#xff0c;并特别聚焦于金仓数据库&#xff08;Kingbase&#xff…

Ubuntu安装Lamp

Ubuntu安装Lamp本文将为您提供一个在Ubuntu服务器上搭建LAMP(Linux, Apache, MySQL, PHP)环境的完整指南。通过本文,您将学习如何安装和配置Apache、MySQL、PHP,并将您的PHP项目部署到服务器上。本文适用于Ubuntu …

(6-1)常见类的继承关系

&#xff08;12&#xff09; &#xff08;13&#xff09; 谢谢

【程序员必看+收藏】AI Agent:从聊天机器人到数字员工的智能革命指南

文章全面解析了AI Agent的核心概念、工作原理与开发实践。AI Agent是基于大语言模型的智能体&#xff0c;具备自主规划、记忆存储和工具调用能力&#xff0c;能独立完成复杂任务。文章详细介绍了Agent的三大核心能力&#xff08;规划、记忆、工具使用&#xff09;、ReAct工作模…

How to do A/B test?

1 Pre-Experiment & Preparition 1.1 Define Clear Objective & Metrics You must move beyond a vague "affects the final results." What part of the algorithm are you changing? (e.g., scor…

铁轨轨道安全障碍物检测数据集VOC+YOLO格式620张6类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件)图片数量(jpg文件个数)&#xff1a;620标注数量(xml文件个数)&#xff1a;620标注数量(txt文件个数)&#xff1a;620标注类别数&…

CodeArts Doer代码智能体

什么是CodeArts Doer代码智能体 CodeArts Doer代码智能体是一款集代码大模型、AI IDE、代码Agent为一体的智能编码产品。面向代码生成、研发知识问答、单元测试用例生成、代码解释、代码注释、代码调试、代码翻译、代码检查、代码优化等场景功能&#xff0c;为开发者提高研发效…

(6-2)常见类的继承关系

&#xff08;13&#xff09; &#xff08;14&#xff09; 谢谢

大模型驱动的知识图谱构建全攻略:从传统方法到前沿进展,一篇读懂LLM如何重塑知识工程

本文系统综述了大语言模型(LLM)驱动的知识图谱构建最新进展&#xff0c;深入分析了LLM如何重塑本体工程、知识抽取和知识融合三大核心环节。文章对比了基于模式和无模式两种范式&#xff0c;指出LLM正推动知识图谱从静态规则系统向动态生成生态转变。未来研究方向包括基于知识图…

(6-3)常见类的继承关系

&#xff08;14&#xff09; &#xff08;15&#xff09; 谢谢

Python中的异常处理

异常 """异常(Exception):1.什么是异常&#xff1f;python运行时&#xff0c;发生的错误&#xff0c;而导致程序最终无法执行&#xff0c;异常&#xff01;思考&#xff1a;有没有出现错误&#xff1f;编译过程中的错误&#xff0c;红色波浪线运行过程中的错误&…

用字节连接和美,科技从此有了温度

有些名字,不只是一个符号,而是一种愿景的承载。 有些改变,不只是一次更名,而是一段新旅程的开始。 2026年,新的起点。 金华市桑桥网络科技有限公司正式更名为 金华和美字节科技有限公司, 全新启用企业字号——“…

2026最新AI大模型学习路线:大模型工程师成长之路:从基础到实战的系统学习指南

文章提供了学习大模型的完整路线&#xff0c;从数学基础&#xff08;线性代数、微积分、概率统计&#xff09;和编程基础开始&#xff0c;逐步进入机器学习、深度学习&#xff0c;最后探索大模型技术&#xff08;如Transformer架构、预训练模型等&#xff09;。文章还提供了各阶…

马斯克2026采访详解:中国AI算力将远超世界,世界变化的奇点即将到来!

Antigravity 更新 Skill几天了&#xff0c;老金刚有空写。 老金可以趁机再给大家说一遍Skill是什么&#xff0c;它为什么受到全网推崇。 Claude Code在25年的10月就发布了Agent Skills&#xff0c;并在2026年的1月&#xff0c;确立了“全 Skill 化”的架构&#xff0c;并开源其…

强烈安利8个AI论文软件,MBA毕业论文轻松搞定!

强烈安利8个AI论文软件&#xff0c;MBA毕业论文轻松搞定&#xff01; AI 工具助力论文写作&#xff0c;高效降重更省心 在当前的学术环境中&#xff0c;MBA 学生面临着日益繁重的论文写作任务。无论是开题报告、大纲搭建&#xff0c;还是初稿撰写和最终润色&#xff0c;都需要耗…

学长亲荐2026 TOP8 AI论文网站:专科生毕业论文神器测评

学长亲荐2026 TOP8 AI论文网站&#xff1a;专科生毕业论文神器测评 2026年AI论文写作工具测评&#xff1a;为何值得一看 随着人工智能技术的不断发展&#xff0c;AI在学术写作中的应用越来越广泛。对于专科生而言&#xff0c;撰写一篇符合要求的毕业论文往往面临诸多挑战&#…

Marshalsec 工具详解

0x01.Marshalsec 是什么 Marshalsec 是一个用于研究和利用 Java 反序列化、JNDI 以及 RMI 安全问题的攻击与测试框架,由著名 Java 安全研究员 Moritz Bechler 开发。该工具并非传统意义上的“漏洞利用脚本”,而是一组…

语音识别大模型原理 - 详解

语音识别大模型原理 - 详解2026-01-18 18:42 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; …

AI+时代:程序员必知的就业转型与技能提升指南

本文探讨"人工智能"如何促进高质量充分就业&#xff0c;从三方面展开&#xff1a;人工智能催生新产业、推动传统行业智能化创造新岗位&#xff1b;通过通识教育、高等教育和终身学习提升劳动者AI素养&#xff1b;赋能人岗匹配、工作执行和交付方式&#xff0c;增强职…

(6-4)常见类的继承关系

&#xff08;15&#xff09; &#xff08;16&#xff09; 谢谢