当前位置: 首页 > wzjs >正文

简约个人网站欣赏wordpress自定义的注册页面模板

简约个人网站欣赏,wordpress自定义的注册页面模板,临沂网站建设模板,wordpress设置访客登陆文章目录 我讨厌模拟题H.What isallyouneed?J.Generate01StringM - 第九届河北省大学生程序设计竞赛 我讨厌模拟题 题目来源:ProblemK.UNO ! 解题思路 这个题一开始就是纯模拟,用的数组以及动态数组做下标方便删除为0的情况,虽…

文章目录

  • 我讨厌模拟题
  • H.What isallyouneed?
  • J.Generate01String
  • M - 第九届河北省大学生程序设计竞赛

我讨厌模拟题

题目来源:ProblemK.UNO !
在这里插入图片描述
解题思路
这个题一开始就是纯模拟,用的数组以及动态数组做下标方便删除为0的情况,虽然很麻烦,但也是真的麻烦,但这道题用双端队列写更容易些,一开始让他们顺序入队,从队头开始遍历,首先判断出了这张牌后剩余的牌数是非为0,若为0直接踢出,否则进行相应的操作后,再将其踢出队头,并加入队尾,注意如果遇到反转,从队尾开始遍历,方法相同,只是将队头变队尾,从队尾删除放队头等。所有操作完成后按顺序输出即可。
代码实现

#include<bits/stdc++.h>
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
using namespace std;
#define int long long
#define endl '\n'
#define PII pair<int,int>
#define fi first 
#define se second
#define pf push_front
#define pb push_back
const int N=2e5+5;
int n,m,a[N],b[N];signed main()
{IOS; cin>>n>>m;deque<PII>q;for(int i=1;i<=n;i++){cin>>a[i];q.pb({a[i],i});}string s;cin>>s; int x,y;int f=1;//做标记方向,1为顺时针,0为逆时针 for(int i=0;i<s.size();i++){if(f)//当前为正向{if(s[i]=='C')//普通牌{if(q.front().fi==1)q.pop_front();//如果只剩一张牌,出完这张牌后就直接出队了else//否则排到后面,并且牌数-1 {x=q.front().fi-1;y=q.front().se;q.pop_front();q.pb({x,y}); } } else if(s[i]=='S')//禁止牌{if(q.front().fi==1)q.pop_front();else{x=q.front().fi-1;y=q.front().se;q.pop_front();q.pb({x,y}); }//对禁止的效果进行操作,下一个玩家禁止出牌,即直接跳过,出队并排在队尾x=q.front().fi;y=q.front().se;q.pop_front();q.pb({x,y}); 	}else if(s[i]=='R')//反转牌,将顺序反转{f=0;//标记方向变换if(q.front().fi==1)q.pop_front(); //同样需要判断else{q.front().fi--;//这时不需要再排在后面了,因为顺序已经反转了,顺序的队首相当于逆序的队尾				} }else//加罚两张牌并禁止出牌{if(q.front().fi==1)q.pop_front();else{x=q.front().fi-1;y=q.front().se;q.pop_front();q.pb({x,y}); }x=q.front().fi+2;//下家加罚两张牌 y=q.front().se;q.pop_front();q.pb({x,y}); } }else//f=0,逆序,和顺序的思路一样,只是把队头和队尾调换一下即可,从队尾出队,排在队头{if(s[i]=='C'){if(q.back().fi==1)q.pop_back();else{x=q.back().fi-1;y=q.back().se;q.pop_back();q.pf({x,y});}}else if(s[i]=='S'){if(q.back().fi==1)q.pop_back();else{x=q.back().fi-1;y=q.back().se;q.pop_back();q.pf({x,y});}x=q.back().fi;y=q.back().se;q.pop_back();q.pf({x,y});}else if(s[i]=='R'){f=1;if(q.back().fi==1)q.pop_back();else{q.back().fi--;}}else{if(q.back().fi==1)q.pop_back();else{x=q.back().fi-1;y=q.back().se;q.pop_back();q.pf({x,y});}x=q.back().fi+2;y=q.back().se;q.pop_back();q.pf({x,y});}	} }while(q.size()){if(q.front().fi>=0)b[q.front().se]=q.front().fi;q.pop_front();}for(int i=1;i<=n;i++)cout<<b[i]<<endl;return 0;} 

H.What isallyouneed?

题目来源: ProblemH.What isallyouneed?
在这里插入图片描述
解题思路
很简单的一道题目,从后往前找“isallyouneed”,如果能找到输出前面的部分,否则输出-1,巧妙利用rfind函数和substr函数
代码实现

#include<bits/stdc++.h>
using namespace std;
int main()
{string s,s1;cin>>s;s1="isallyouneed";int pos=s.rfind(s1);if(pos==-1)//如果没找到cout<<"No"<<endl;else{cout<<"Yes"<<endl;for(int i=0;i<pos;i++)cout<<s[i];}return 0;} 

J.Generate01String

题目来源: ProblemJ.Generate01String
在这里插入图片描述
解题思路
不管用那种方法,最后得到的01串0和1的个数一定相同,并且总数一定是偶数,接着,我们可以把这个01串分成一些01或10串,这样将复杂的问题分解成小问题,用两个变量分别记录多余的0和1的个数,如果为0是就可以转变位置变量,最后输出即可。
代码实现

#include<bits/stdc++.h>
using namespace std;
#define PII pair<int,int>
#define fi first
#define se second
#define int long long
const int N=205;
string s;
signed main()
{cin>>s;int x=count(s.begin(),s.end(),'0');//0的个数int y=count(s.begin(),s.end(),'1');//1的个数if((x+y)%2!=0||x!=y){cout<<-1<<endl;return 0;} x=0,y=0;int t=1;vector<PII>v;for(int i=0;i<s.size();i++){if(s[i]=='1'){if(y==0){v.push_back({t,2});x++;}else{y--;t++;}}else{if(x==0){v.push_back({t,1});y++;}else{x--;t++;}}} cout<<v.size()<<endl;for(auto i :v)cout<<i.fi<<" "<<i.se<<endl;return 0;
}

M - 第九届河北省大学生程序设计竞赛

题目来源:M - 第九届河北省大学生程序设计竞赛
在这里插入图片描述
在这里插入图片描述
解题思路
这道题可以用搜索也可以用二进制来做,这里建议大家了解一下bitset函数。

代码实现

#include<bits/stdc++.h>
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
using namespace std;
const int N=205;
int n,m,a,b,c,x,y,z;
string s;
void solve()
{cin>>n>>m;for(int i=1;i<=m;i++)cin>>s[i];cin>>a>>b>>c>>x>>y>>z;for(int i=1;i<=(1<<n)-1;i++){bitset<20>bt(i);if(bt.count()>=10&&bt.count()<=13){vector<int>v;v.push_back((int)2e18);for(int j=1;j<=m;j++){bitset<20>c(s[j]);c&=bt;v.push_back(c.count());}sort(v.begin(),v.end(),greater<int>());if(v[a]==x&&v[b]==y&&v[c]==z){cout<<bt.count()<<endl;for(int j=n-1;j>=0;j--)if(bt[j])cout<<n-j<<" ";return ;}}}cout<<-1<<endl;
}
signed main()
{IOS;int _=1;cin>>_;while(_--)solve(); return 0;
}
http://www.dtcms.com/wzjs/593697.html

相关文章:

  • 洛阳市建设工程评标专家网站网站建设买什么书
  • 自己做微信电影网站怎么做wordpress id从1开始
  • 鞍山做网站的公司crm网站推荐
  • 优秀购物网站建设wordpress漏洞视频
  • 网站开发项目建设规范深圳做网站哪家公司最好
  • 公司网站建设公司海南新闻最新消息
  • 杭州公司注册虚拟地址网站seo策划方案设计
  • 标准网站建设费用wordpress怎么添加语言包
  • 网站开发所涉及的技术创办网站需要哪些步骤
  • 阿里巴巴网站建设论文天津建设培训中心网站
  • 怎样可以做网站saas系统怎么读
  • 南昌企业网站开发oppo软件商店网页入口
  • 新手可以自己学做网站设计吗坪山网站建设平台
  • 做h5好点的网站网站的建设好处
  • 响应式网站研究现状网站建设公司怎么寻找客户呢
  • 网站建设管理员温州做网站老师
  • 关于网站建设的合同范本html社交网站模板
  • 成都建站哪家好广州企业建站找哪家
  • 25个网站响应式网站和平时网站的区别
  • 个人网站的制作论文新桥网站建设
  • 企业静态网站模板株洲seo主管
  • 奉贤专业做网站外贸网站建设制作
  • 58招聘运营网站怎么做保定seo建站
  • 网站排名seo教程建立企业网站地址
  • 江门当地的免费网站优化代理公司注册收费
  • 大家都用哪个网站做读书笔记律所网站建设
  • 网站维护托管公司网站建设要代码有什么好处
  • 活动策划公司网站什么是网络营销的综合工具
  • 网站域名申请了该怎么做国外教程 网站
  • 做翻译 网站wordpress淘宝客手机版