北大校赛
来源:互联网 发布:网络很火丑男图片 编辑:程序博客网 时间:2024/05/21 03:56
做些总结,进步一下
(当时想的太多了,其实就用一个in,一个out标记一下教室内外人数即可,特殊处理O被标记的,因为这个O只有一种情况)
题目描述:
大意就是给一个IO串,有一些IO被做了标记,做了标记的的IO标记代表同一个人的进出,现给出人数,让你求进出总的可能数。
Sample Input
88 2 3 //串有八个字符,2组被标记,3个人IIOIOIOO1 3 //被标记的IO位置4 58 2 3IIOOIOIO2 35 66 2 3IOIOIO1 2 3 4
#include<iostream>#include<cstdio>#include<string>#include<cstring>using namespace std;int main(){ int T,m,n,p; long long out,in,total; int u,v; int i,j,k; string s; int sin[110000],sout[110000]; cin>>T; for(i=0;i<T;i++) { cin>>n>>m>>p; out=p; in=0; total=1; memset(sin,0,sizeof(sin)); memset(sout,0,sizeof(sout)); cin>>s; for(j=0;j<m;j++) { cin>>u>>v; sin[u-1]=1; sout[v-1]=1; } for(j=0;j<s.length();j++) { if(s[j]=='I') { total=((total%1000000007)*out); out-=1; in+=1; } else if(s[j]=='O') { if(sout[j]==1) total*=1; else total=((total%1000000007)*in); in-=1; out+=1; } cout<<in<<" "<<out<<endl; } cout<<total%1000000007<<endl; } return 0;}
- 北大校赛
- 北大校赛提前热身,Happy Programming Contest和Digging
- 北大校赛2011 Word Ladder(C题) 解题报告
- 2015北大校赛I:The New MindSwitcher
- 2991: [2012北大校赛]Do Not Gamble
- 2013北大校赛 13年5月12日 总结
- 2014年北大校赛C&Openjudge C14C ROBOT bfs 搜索
- 北大暑校ACM/ICPC期末感受
- 记09年北大ACM校内赛
- 北大ACM校内赛解题报告
- 北大医药不是北京大学的本色校企,北大校企管理混乱
- 2012北大信科夏令营外校上机题目1
- 2012北大信科夏令营外校上机题目2
- 写在一次放弃北大网上acm练习赛之后
- 探讨北大ACM校内赛的一道试题
- 2016中北大学ACM程序设计新生赛题解
- 中北大学NUC2017新生赛1008/NOJ-1988
- 中北大学NUC2017新生赛1001/NOJ-1981
- 张焕国
- 沈昌祥
- WIFI、3G、2G网络连接判断深入分析
- VS2010中,无法嵌入互操作类型“……”,请改用适用的接口的解决方法
- Linux下Web服务器应用之基础简介
- 北大校赛
- 关于数据库方向的顶级国际会议
- python 获取本机ip地址的两种实现方法
- linux系统编程之文件与I/O(三):目录的操作
- 人工智能的先驱人物
- Linux下Web服务器应用之虚拟主机
- 数据挖掘10个最具挑战性的问题
- SAP-FICO的顾问面试题
- C语言字符串反转的实现