北京律师网站建设平台合肥重点工程建设局

diannao/2026/1/16 3:29:09/文章来源:
北京律师网站建设平台,合肥重点工程建设局,太仓网站建设哪家好,wordpress高度还原设计稿矩阵游戏 考试时思路一度和正解一样#xff0c;考试到最后还是打了80分思路#xff0c;结果80分打炸了只得了40分暴力分 题解 算出来第一列的总值#xff0c;每次通过加每两列之间的差值得出下一列的总值 算第一列我们只需要让当前点*行增倍的数量就行了 for(ll i1;in;i… 矩阵游戏 考试时思路一度和正解一样考试到最后还是打了80分思路结果80分打炸了只得了40分暴力分 题解 算出来第一列的总值每次通过加每两列之间的差值得出下一列的总值 算第一列我们只需要让当前点*行增倍的数量就行了 for(ll i1;in;i){nowlie(nowlieelephant(i,1)*hang[i])%mod;sum(sumhang[i]);} 算其他列 nowlie(nowliesum)%mod; 可能这一列会加倍只需乘上就行了 ans(ansnowlie*lie[i])%mod; 思路简单代码好打然而考试我还是打炸了 代码 #includebits/stdc.h using namespace std; #define ll long long #define A 1010101 const ll mod1e97; ll n,m,nowlie0,sum0,ans0,k; ll lie[A],hang[A]; char c[5]; ll elephant(ll i,ll j){return ((i-1)*m%modj)%mod; } int main(){scanf(%lld%lld%lld,n,m,k);for(ll i1;i1000000;i){hang[i]1;lie[i]1;}for(ll i1,a,x;ik;i){scanf(%s,c1);scanf(%lld%lld,a,x);if(c[1]S){lie[a]lie[a]*x%mod;}if(c[1]R){hang[a]hang[a]*x%mod;}}for(ll i1;in;i){nowlie(nowlieelephant(i,1)*hang[i])%mod;sum(sumhang[i]);}for(ll i1;im;i){ans(ansnowlie*lie[i])%mod;nowlie(nowliesum)%mod;}coutansendl; } t2t3卡常题目AC不了的 跳房子 看了一晚上第三题又看了扫描线又打了一晚上又理解了图论tarjan来做第三题所以我用两个小时把t2A了 莫名和考试时思路相似   其实一点也不相似 $85\%$算法 暴力找循环节剩下数据经过特殊构造你AC不了的 代码 #includebits/stdc.h using namespace std; #define ll long long char s[10]; #define A 11111111 ll vis[5100][5100],a[5100][5100]; inline int read(){register int ret0,f1;register char r;rgetchar();while(!isdigit(r)){if(r-) f-1;rgetchar();}while(isdigit(r)){retret*10r-0;rgetchar();}return f*ret; } ll p,nowx1,nowy1,top0,n,m; ll stax[A],stay[A]; void work(ll x){ll tot0;while(x){ll nxnowx,nynowy,d2nx1,d3nx-1;(nx1n1)?d21:d2nx1;(nx-10)?d3n:d3nx-1;if(nym) ny0;ll z1a[nx][ny1],z2a[d2][ny1],z3a[d3][ny1];if(z1z2z1z3) nowxnx,nowyny1;else if(z2z1z2z3) nowxd2,nowyny1;else if(z3z1z3z2) nowxd3,nowyny1;x--;top;stax[top]nowx,stay[top]nowy;if(!vis[nowx][nowy])vis[nowx][nowy]top;else{tottop-vis[nowx][nowy];xx%tot;}}while(top){ll xstax[top],ystay[top];vis[x][y]0;top--;}printf(%lld %lld\n,nowx,nowy); } int main(){nread(),mread();for(ll i1;in;i)for(ll j1;jm;j)a[i][j]read();pread();for(ll i1,aa,bb,cc;ip;i){scanf(%s,s1);if(s[1]m){ccread();work(cc);}if(s[1]c){aaread(),bbread(),ccread();a[aa][bb]cc;}} } $100\%$算法 和找循环节类似但又有很大区别 思考循环节问题出现在那 可能会遍历整张图才找到一个循环节即使你预处理了找到循环节那么出现change正好改掉循环节再move找循环节再change 再move你就被卡死了复杂度本身就有问题 那么没办法做了吗 建立置换走到一个点如果步数大就直接置换步数小就暴力走 我们用一个线段树来维护这个置换如果从1--m建树那么t[1]就表示走m步置换成哪里 每次走m步 走的次数就是v/m 根据置换的运算$t^k$就是走了k次每次走t步 通过快速幂算出置换得出结果 那么我们经过%可以快速算出来剩下的剩下的步数暴力走即可 顺便学了置换的运算             c.g[i]a.g[t.g[i]]; 代码 #includebits/stdc.h using namespace std; #define ll long long #define A 1010101 ll n,m,k,nowx1,nowy1; ll f[2100][2100]; char znsbc[10]; struct node{ll g[2100];node(){for(ll i1;in;i)g[i]i;}node operator *(const node a){node t*this,c;for(ll i1;in;i)c.g[i]a.g[t.g[i]];return c;} }nxt[2100]; struct tree{ll l,r,f;node t; }tr[10100]; inline void up(ll p){tr[p].ttr[p1].t*tr[p1|1].t;return ; } inline void built(ll p,ll l,ll r){tr[p].ll,tr[p].rr;if(lr){tr[p].tnxt[l];return ;}ll mid(lr)1;built(p1,l,mid);built(p1|1,mid1,r);up(p); } inline void add(ll p,ll o){ // printf(l%lld r%lld\n,l,r);if(tr[p].ltr[p].r){tr[p].tnxt[o];return ;}ll mid(tr[p].ltr[p].r)1;if(mido)add(p1,o);elseadd(p1|1,o);up(p); } inline node meng(node x,ll k){node ans;for(;k;k1,xx*x)if(k1) ansans*x;return ans; } inline ll get(ll k,ll flag){if(k(flag?m1:n1))return 1;if(!k)return flag?m:n;return k; } inline void change(ll xx,ll yy){ll maxn0;xxget(xx,0);yyget(yy,1);for(ll i-1;i1;i){ll xget(xxi,0),yget(yy1,1);if(maxnf[x][y]) maxnf[x][y],nxt[yy].g[xx]x;}return ; } inline void move(ll x){while(x)x--,nowxnxt[nowy].g[nowx],nowyget(nowy1,1)/*,printf(x%lld\n,x)*/; } int main(){scanf(%lld%lld,n,m);for(ll i1;in;i)for(ll j1;jm;j)scanf(%lld,f[i][j]);for(ll i1;in;i)for(ll j1;jm;j)change(i,j);built(1,1,m);scanf(%lld,k);for(ll i1,a,b,c,v,o;ik;i){scanf(%s,znsbc1);if(znsbc[1]m){scanf(%lld,v);ll lenmin(v,m-nowy1);move(len);v-len;if(v){nowxmeng(tr[1].t,v/m).g[nowx];v%m;if(v){move(v);}}printf(%lld %lld\n,nowx,nowy);}else{scanf(%lld%lld%lld,a,b,c);f[a][b]c;for(ll j-1;j1;j)change(aj,b-1)/*,printf(*****\n);*/;oget(b-1,1);add(1,o);}} }  随机数据生成 #includebits/stdc.h #define ll long long using namespace std; ll random(ll n) {return rand()%n; } bool a[3210520]; int main() {freopen(mkd.txt,w,stdout); srand((unsigned)time(0));ll nrandom(5)5,mrandom(5)5;printf(%lld %lld\n,n,m);for(ll i1;in;i,puts())for(ll j1;jm;j){ll xrandom(550);while(a[x]) xrandom(550);printf(%lld ,x);}ll krandom(50)50;printf(%lld\n,k);for(ll i1;ik;i){ll oprandom(2);if(op) {printf(move );printf(%lld\n,random(50000)50000);}else{printf(change );ll lrandom(n)1;ll rrandom(m)1;printf(%lld %lld %lld\n,l,r,random(50)50); }}fclose(stdout); } View Code t3做法尤其玄学 傻逼卡常题傻逼卡常题傻逼卡常题毒瘤出题人毒瘤数据毒瘤做法 做法1把序列问题转化为图论线段树优化建边tarjan缩点线段树维护图中内容我不会 做法2扫描线一条性质若abcd并且a--c是好区间b--d是好区间那么a--d是好区间 假设我们扫描到i i1那么如果i i1在好区间里那么val[i] val[i1]都在好区间里, 设好的二元组为相邻两个数,那么区间若为好区间好二元组数量为r-l 用一棵线段树维护二元组数量设为v,若vlr则是好区间,假设我们当前扫描到了a[i],那么处于a[i]-1  a[i]1的位置都要加1 线段树维护一下,细节比较多 做法3,性质若r-lmaxval-minval那么就是一个好区间 那么若maxval到minval之间全部出现那么是一个好区间,那么位置最左最右值出现即可,, 线段树维护一下||st表维护一下 但做法3本身复杂度不对,随机数据下表现优秀,但会被特殊数据卡 分块优化一下 #includebits/stdc.h #define MAXN 100005 #define min(a,b) ((ab)?(a):(b)) #define max(a,b) ((ab)?(a):(b)) using namespace std; int mn[20][MAXN],mx[20][MAXN],mh[MAXN],a[MAXN],n,mnpos[20][MAXN],mxpos[20][MAXN],ans1[2005][2005],ans2[2005][2005],t; int bl[MAXN]; vectorintld; void pre() {for(int i1;in;i)for(int j17;j0;j--)if(i(1j)) {mh[i]j;break;}for(int i1;i17;i)for(int j1;jn;j){mn[i][j]min(mn[i-1][j],mn[i-1][j(1(i-1))]);mx[i][j]max(mx[i-1][j],mx[i-1][j(1(i-1))]);mnpos[i][j]min(mnpos[i-1][j],mnpos[i-1][j(1(i-1))]);mxpos[i][j]max(mxpos[i-1][j],mxpos[i-1][j(1(i-1))]);}return ; } /*const int L120|1; char buffer[L],*S,*T; #define getchar() ((ST(T(Sbuffer)fread(buffer,1,L,stdin),ST))?EOF:*S)*/ inline int Rd() {int x0;char cgetchar();while(c9||c0)cgetchar();while(c0c9){xx*10c-48;cgetchar();}return x; } inline int gmax(int l,int r) {return max(mx[mh[r-l1]][l],mx[mh[r-l1]][r-(1mh[r-l1])1]); } inline int gmin(int l,int r) {return min(mn[mh[r-l1]][l],mn[mh[r-l1]][r-(1mh[r-l1])1]); } inline int qmax(int l,int r) {return max(mxpos[mh[r-l1]][l],mxpos[mh[r-l1]][r-(1mh[r-l1])1]); } inline int qmin(int l,int r) {return min(mnpos[mh[r-l1]][l],mnpos[mh[r-l1]][r-(1mh[r-l1])1]); } int main() { // freopen(sequence21.in,r,stdin);nRd();tpow(n,0.7);for(int i1;in;i) {a[i]Rd();mn[0][i]mx[0][i]a[i];mnpos[0][a[i]]mxpos[0][a[i]]i;}int p0,tot0;while(pn){ld.push_back(p1);for(int i1;it;i)bl[pi]tot;pt;tot;}pre();memset(ans1,0x3f,sizeof(ans1));memset(ans2,-0x3f,sizeof(ans2));for(int i0;ild.size();i)for(int ji;jld.size();j){int l,r;lld[i];rld[j];int nowmingmin(l,r),nowmaxgmax(l,r);int plqmin(nowmin,nowmax),prqmax(nowmin,nowmax);while(lpl||rpr){if(lpl){nowminmin(nowmin,gmin(pl,l));nowmaxmax(nowmax,gmax(pl,l));lpl;}if(rpr){nowminmin(nowmin,gmin(r,pr));nowmaxmax(nowmax,gmax(r,pr));rpr;}plqmin(nowmin,nowmax);prqmax(nowmin,nowmax);}ans1[i][j]l;ans2[i][j]r;// coutans1[i][j] ans2[i][j]endl;}int Q;QRd();while(Q--){register int l,r,ll,rr;lRd();rRd();llbl[l]1;rrbl[r]-1;int nowmingmin(l,r),nowmaxgmax(l,r);int plqmin(nowmin,nowmax),prqmax(nowmin,nowmax);while(lpl||rpr){llbl[l]1;rrbl[r]-1;if(lpl){nowminmin(nowmin,gmin(pl,l));nowmaxmax(nowmax,gmax(pl,l));lpl;lmin(l,ans1[ll][rr]);}if(rpr){nowminmin(nowmin,gmin(r,pr));nowmaxmax(nowmax,gmax(r,pr));rpr;rmax(r,ans2[ll][rr]);}plqmin(nowmin,nowmax);prqmax(nowmin,nowmax);}printf(%d %d\n,l,r);}return 0; }   转载于:https://www.cnblogs.com/znsbc-13/p/11302998.html

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

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

相关文章

网站百度收录快备案期间网站如何访问

可以点击关于我联系我获取完整PDF (VX:mm14525201314) 1. 请列举出在 JDK 中几个常用的设计模式? 单例模式(Singleton pattern)用于 Runtime,Calendar 和其他的一些类中。 工厂模式(Factory pattern&…

柳州在哪里做网站大连开发区做网站的公司

使用MATLAB和Vivado读取txt文件 MATLAB处理十六进制的数据: 将你的16进制数据保存到txt文件中,打开MATLAB选择workspace->importdata,导入txt文件中的数据,这样会得到cell格式数据(假设名字为textdata),调用函数hex2dec即可,a=hex2dec(textdata),a就是你所想要的数…

怎么敲代码做网站佛山搜索引擎推广服务好

为积极配合国家在卫生事业改革发展的前进方向,抓好医院管理的顶层设计,中国初级卫生保健基金会公共卫生专业委员会与国家卫生健康委人才交流服务中心于2023年7月18日成功举行高质量发展项目—糖尿病管理医药共话交流会。此次会议邀请全国内分泌领域及药学…

建筑八大员证报考网站专业群建设专题网站

假如同时给上千台服务器执行一个命令,拷贝一个文件,杀一个进程等,有什么简化运维管理的工具呢?在小型使用中我都是使用for循 环,数量巨大,一方面不确定操作是否成功,一方面for循环语句性能不好估计且是不是同步并行执行.,这类工具比如 pdsh,mussh&#…

网站的规划建设与分析互联网销售可以卖什么产品

最近帮别人调试的时候,出现这个问题。环境:VS2008VSS2005,多人配合完成一个项目。 在编译的时候报错:未能向文件“....csproj.FileListAbsolute.txt”写入命令行,对路径的访问被拒绝。 在网上开始查找出错的解决方法,终…

购买了个网站源码 怎么建立商品推广文案

数字IC实践项目(8)—CNN加速器(ASIC_Flow;付费项目补充) 更新说明项目整体框图神经网络框图File tree 项目简介和学习目的软件环境要求 Area、QOR、Power&Timing报告Area & QORTiming & Power 总结 更新说…

网站不备案做优化网站上传用什么软件做视频格式

不学前沿技术与朽木浮草何异 ?Java18新特性 文章目录 不学前沿技术与朽木浮草何异 ?Java18新特性JEP 400:默认字符集为 UTF-8JEP 408:简易的 Web 服务器JEP 413:优化 Java API 文档中的代码片段JEP 416:使用方法句柄重新实现反射核心JEP 417: 向量 API&a…

做电影网站怎样赚钱十大装饰公司

打开电源启动机器几乎是电脑爱好者每天必做的事情,面对屏幕上出现的一幅幅启动画面,我们一点儿也不会感到陌生,但是,计算机在显示这些启动画面时都做了些什么工作呢?相信有的朋友还不是很清楚,本文就来介绍…

电商网站怎么建设网站建设中 html5 源码

以下文字信息由(新史知识网)编辑整理发布。 让我们赶紧来看看吧! 问题1:快递寄电脑显示器要多少钱? 此物有多重? 顺丰寄就可以了,但是必须是原包装的,不然不好寄。 问题2&#xff1…

在网站上做教育直播平台多少钱网页设计答辩问题及答案

一、安装vue3脚手架 卸载vue2脚手架 npm uninstall -g vue-cli清除缓存 npm cache clen --force安装最新脚手架 npm install -g vue/cli查看脚手架版本 vue -V 二、构建项目 创建项目 vue create 项目名选择配置 自定义配置,回车 上下键选择Linter / Formatter&a…

长春建网站一般多少钱网站建设哪好

【1】nginx应用领域分类: 类1:nginx反向代理与负载均衡类网站应用; 类2:nginx php/jsp 类网站应用; 类3:nginx静态内容web服务器应用; 【2】F5 指的是 BIG-IP 硬件 四/七层负载均衡交换机&a…

作品展示html5网站模板公司注册好了怎么做网站

文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。 操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性…

seo网站建设 厦门网站空间怎么做

项目中有使用到MongoDB,由于比较高频查询与写入,出现了每次查询的结果集都会变的问题。 描述 我使用的是skiplimit的分页方式,模拟mysql的 limit 0,10去分页 由于出现了结果集变化的问题,我想着使用排序去固定返回的结果集,结果…

网站如何做推广效果好关于做教育新闻的网站

上周,关于Google的Bard和Midjourney v6的讨论异常火热。 接下来,让我们回顾一下上周那些引人注目的AI新闻。 ① 已近乎真实拍摄:Midjourney v6的画质令人惊叹 由Midjourney v6制作的图片,质量之高,媲美电影级别&…

建设注册管理中心网站网络广告类型有哪几种

1.先选好对应的芯片设备 之后步骤参考这个:MDK5 JLINK配置流程_keil5配置jlink仿真器步骤-CSDN博客 2.jlink下载程序之后板子没有运行可以查看reset and run是否有没有勾选

企业网站建设文案已备案个人网站做淘宝客

2.14 备份Android应用程序数据 Pratik Rupwal2.14.1 问题当用户恢复出厂设置或者改用新的Android设备时,应用程序丢失存储数据或者应用程序设置。2.14.2 解决方案Android的Backup Manager(备份管理器)能够在应用程序重新安装时自动恢复备份数…

中国建设网站官网网页设计报告需求分析

Java的Collection和Collections主要在以下三个方面存在区别: 角色与功能: Collection是一个集合接口,它为各种具体的集合提供了最大化的统一操作方式。它是Java集合框架中集合类的一个基本接口,包括List、Set、Queue等集合类的父…

做白酒的网站做毕业设计一个网站的数据来源

上午的时候看到有朋友需要微信推送,正好我也需要,之前一直用 Server 酱的,但是最近用不了,想找一个替代品,一开始准备选择钉钉,除了打卡,我很少使用钉钉,邮件提醒是备用方案&#xf…

dede手机网站更新酒店网站的开发及其设计方案

网络工程师之交换机配置单臂 ECHO 功能的 BFD 会话篇 配置单臂 ECHO 功能的 BFD 会话,实现对链路故障的快速检测 在支持BFD功能的路由上配置 bfd # 启用 BFD 功能;q退出 bfd atob bind peer-ip 10.1.1.2 interface gigabitEthernet1/0/0 one-…

做网站需要做优化吗欧美简约风格网站设计

今天在整个ssm的时候出现了个低级错误,找了好久才找出来,在发现真理的那一刻,我都有死的冲动了。 报错如下: HTTP Status 500 - Request processing failed; nested exception is java.lang.IllegalStateException: Optional int …