201509-3-模板生成系统
来源:互联网 发布:台湾电视直播软件 编辑:程序博客网 时间:2024/06/06 17:26
(http://115.28.138.223/view.page?gpid=T30)
#include<iostream>using namespace std;#include<string.h>#define maxn 0x7fffffff#include<map>#include<stdio.h>int m,n;int main(){ int i,j; string s[105]; string s1,s2,s3,s4; cin>>n>>m; getchar(); for(i=0;i<n;i++) getline(cin,s[i]); map<string,string>v; for(j=0;j<m;j++) { int k,k1=0; cin>>s1; getchar(); getline(cin,s2); s1.insert(0,"{{ "); s1=s1+" }}"; s2.erase(0,1); s2.erase(s2.end()-1,s2.end()); v[s1]=s2; } int j1[20],j2[20],k,k1; for(i=0;i<n;i++) { k1=0; memset(j1,-1,sizeof(j1)); memset(j2,-1,sizeof(j2)); for(j=0;s[i][j]!=0;j++) { if(s[i][j]=='{'&&s[i][j+1]=='{') j1[k1]=j; if(s[i][j]=='}'&&s[i][j+1]=='}') j2[k1]=j+1; if(j1[k1]!=-1&&j2[k1]!=-1) k1++; } int t=0; for(j=0;j<k1;j++) { s3=""; for(k=j1[j]+t;k<=j2[j]+t;k++) s3.insert(s3.end(),s[i][k]); if(v.count(s3)) { s[i].replace(s[i].begin()+j1[j]+t,s[i].begin()+j2[j]+1+t,v[s3]); t=t+v[s3].size()-s3.size();//注意替代后字符串的长度发生改变,t为变化的长度。 } else { s[i].replace(s[i].begin()+j1[j]+t,s[i].begin()+j2[j]+1+t,""); t=t-s3.size(); } } cout<<s[i]<<endl; } return 0;}
0 0
- 201509-3-模板生成系统
- 201509-3 模板生成系统
- 201509-《模板生成系统》
- ccf 201509-3 模板生成系统
- CCF CSP 201509-3 模板生成系统
- CCF 201509-3 模板生成系统
- CCF 201509-3 模板生成系统
- CCF-201509-3 模板生成系统
- [问题解答]CCF:201509-3:模板生成系统
- CCF 201509-3 模板生成系统
- CCF-201509-3-生成模板系统
- CCF 201509-3 模板生成系统
- ccf 201509-3模板生成系统
- CCF认证201509-3模板生成系统
- CCF认证201509-3 模板生成系统
- CCF 201509-3 模板生成系统
- 201509-3 模板生成系统 ccf
- CCF 201509-3 模板生成系统
- js 执行顺序
- 网站架构
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- Java JSON学习总结
- 制作Docker镜像
- 201509-3-模板生成系统
- 利用rar命令行备份本地svn
- 将一个数组逆序输出。
- 远程连接mysql
- 如何解决springmvc中文乱码问题
- 201503-3-节日
- IMU模块ADIS16448调试过程及经验总结
- 韩信点兵问题
- php文件上传