[Updating]Codeforces Round #402 (Div. 1)解题报告
来源:互联网 发布:怎么复制别人淘宝店铺 编辑:程序博客网 时间:2024/06/03 23:00
A-String Game
简单的二分+模拟
//Author: Lixiang#include<stdio.h>#include<string.h>const int maxn=200001;struct String_Game{char A[maxn],B[maxn],c[maxn];int pos[maxn],N,n;void init(){scanf("%s%s",&A,&B);N=strlen(A);n=strlen(B);for(int i=1;i<=N;i++)scanf("%d",pos+i);}bool check(int p){strcpy(c,A);for(int i=1;i<=p;i++)c[pos[i]-1]=0;int j=0;for(int i=0;i<N&&j<n;i++){if(c[i]==0)continue;if(c[i]==B[j])j++;}if(j==n)return 1;else return 0;}void work(){int L=0,R=N,ans,M;while(L<=R){M=(L+R)>>1;if(check(M)){L=M+1;ans=M;}else R=M-1;}printf("%d\n",ans);}}sol;int main(){sol.init();sol.work();return 0;}
B-Bitwise Formula
大模拟
#include<stdio.h>#include<map>#include<string>#include<iostream>using namespace std;const int maxn=100001,maxm=1001;struct Bitwise_Formula{map <string,int> hash;int a[maxn][maxm],t[maxn],ta[maxn],tb[maxn],N,M;void init(){string s;hash["?"]=0;scanf("%d%d",&N,&M);for(int i=1;i<=N;i++){cin>>s;hash[s]=i;cin>>s;cin>>s;if(s[0]=='0'||s[0]=='1'){for(int j=0;j<M;j++)a[i][j]=s[j]-'0';continue;}ta[i]=hash[s];cin>>s;t[i]=(s[0]=='A')?1:(s[0]=='O'?2:3);cin>>s;tb[i]=hash[s];}}int check(int p,int k){int f[maxn],sum=0; f[0]=k; for(int i=1;i<=N;i++){ if(t[i]==0)f[i]=a[i][p]; if(t[i]==1)f[i]=f[ta[i]]&f[tb[i]]; if(t[i]==2)f[i]=f[ta[i]]|f[tb[i]]; if(t[i]==3)f[i]=f[ta[i]]^f[tb[i]]; sum+=f[i]; } return sum;}void work(){int aa[maxn],bb[maxn],x,y;for(int i=0;i<M;i++){x=check(i,0),y=check(i,1);aa[i]=y<x,bb[i]=x<y;}for(int i=0;i<M;i++)printf("%d",aa[i]);puts("");for(int i=0;i<M;i++)printf("%d",bb[i]);puts("");}}sol;int main(){sol.init();sol.work(); return 0;}
0 0
- [Updating]Codeforces Round #402 (Div. 1)解题报告
- [Updating] Codeforces Round #404 (Div. 2) 解题报告
- [Updating] Codeforces Round #406 (Div. 2) 解题报告
- [Updating] Playrix Codescapes Cup (Codeforces Round #413, rated, Div. 1 + Div. 2) 解题报告
- [Updating] Educational Codeforces Round 20 解题报告
- [Updating] Codeforces Round #411 解题报告
- 【解题报告】Codeforces Round #402 (Div. 2)
- Codeforces Round #250 (Div.1) 解题报告
- Codeforces Round #327 (Div. 1) 解题报告
- Codeforces Round #326 (Div. 1) 解题报告
- Codeforces Round #325 (Div. 1) 解题报告
- [Updating]Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)解题报告
- Codeforces Round #240 (Div. 1) 前3题 解题报告
- Codeforces Round #278 (Div. 1) 解题报告 A.B.
- Codeforces Round #283 (Div. 1)解题报告A.B.C.
- Codeforces Round #290 (Div. 1) 解题报告(A B)
- Codeforces Round #299 (Div. 1) 解题报告 (AB)
- Codeforces Round #305 (Div. 1) A.B.C 解题报告
- QT——setMouseTracking函数
- activiti工作流的web流程设计器整合视频教程 SSM和独立部署
- activiti工作流的web流程设计器整合视频教程 SSM和独立部署
- 为什么说传统分布式事务不再适用于微服务架构
- [Updating]Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)解题报告
- [Updating]Codeforces Round #402 (Div. 1)解题报告
- POJ 2710 Consecutive Digits 可能会
- 为什么说传统分布式事务不再适用于微服务架构
- 341. Flatten Nested List Iterator
- 51Nod 算法马拉松22 代码能力捉急记
- ndk学习
- QT——setMouseTracking函数
- 【CQOI2006】凸多边形 计算几何
- 从央视春晚之版权管理到逐浪软件技术创新-2017年2月江西IDC排行榜与发展报告