博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
10115 - Automatic Editing
阅读量:5106 次
发布时间:2019-06-13

本文共 2468 字,大约阅读时间需要 8 分钟。

  这题的数据需要注意一下,题意不是很清楚,可以去uva的论坛里看看别人贴的数据

 

C++语言:
001
/*
002
+++++++++++++++++++++++++++++++++++++++
003
                author: chm
004
+++++++++++++++++++++++++++++++++++++++
005
*/
006
007
#include <map>
008
#include <set>
009
#include <list>
010
#include <queue>
011
#include <cmath>
012
#include <stack>
013
#include <bitset>
014
#include <cstdio>
015
#include <cctype>
016
#include <vector>
017
#include <cstdlib>
018
#include <cstring>
019
#include <fstream>
020
#include <sstream>
021
#include <iomanip>
022
#include <iostream>
023
#include <algorithm>
024
025
using
namespace
std;
026
027
FILE
*           
fin        
=
stdin;
028
FILE
*           
fout        
=
stdout;
029
const
int       
max_size    
=
10086;
030
char
str
[
max_size
];
031
char
tmpstr
[
max_size
];
032
char
original
[
max_size
][
400
];
033
char
replacestr
[
max_size
][
400
];
034
035
int
main()
036
{
037
#ifndef ONLINE_JUDGE
038    
freopen(
"c:
\\
in.txt"
,
"r"
,
stdin);
039    
fout
=
fopen(
"c:
\\
garage
\\
out.txt"
,
"w");
040
#endif
041    
int
rules;
042    
char
*
ptr;
043    
int
len1
,
len2;
044
045    
while(
scanf(
"%d
\n
"
,
&
rules)
&&
rules)
046    
{
047        
for(
int
i
=
0;
i
<
rules;
++
i)
048        
{
049            
fgets(
original
[
i
],
sizeof(
original
[
i
]),
stdin);
050            
fgets(
replacestr
[
i
],
sizeof(
replacestr
[
i
]),
stdin);
051            
original
[
i
][
strlen(
original
[
i
])
-
1
]
=
'\0';
052            
replacestr
[
i
][
strlen(
replacestr
[
i
])
-
1
]
=
'\0';
053        
}
054        
fgets(
str
,
sizeof(
str
),
stdin);
055
056        
for(
int
i
=
0;
i
<
rules;
++
i)   
//for each rule
057        
{
058            
ptr
=
strstr(
str
,
original
[
i
]);
059            
len1
=
strlen(
replacestr
[
i
]);
060            
len2
=
strlen(
original
[
i
]);
061
062            
while(
ptr)
063            
{
064                
strcpy(
tmpstr
,
ptr
+
len2);
065                
/*
066
                  ****
067
                beba boat
068
                behind the goat
069
                   */
070
071                
/*
072
                ****
073
                bababa boat
074
                beba boat
075
                   */
076                
strcpy(
ptr
+
len1
,
tmpstr);
077                
strncpy(
ptr
,
replacestr
[
i
],
len1);
078                
ptr
=
strstr(
ptr
,
original
[
i
]);
079            
}
080        
}
081        
fprintf(
fout
,
"%s"
,
str);
082    
}
083
084
#ifndef ONLINE_JUDGE
085    
fclose(
fout);
086    
system(
"c:
\\
garage
\\
check.exe");
087    
system(
"notepad c:
\\
garage
\\
out.txt");
088
#endif
089    
return
0;
090
}
091
/*
092
4
093
ban
094
bab
095
096
baba
097
be
098
099
ana
100
any
101
102
ba b
103
hind the g
104
105
banana boat
106
babana boat
107
bababa boat
108
beba boat
109
behind the goat
110
111
1
112
t
113
sh
114
toe or top
115
0
116
---------------------------------
117
behind the goat
118
shoe or shop
119
120
*/

转载于:https://www.cnblogs.com/invisible/archive/2012/03/03/2378123.html

你可能感兴趣的文章
MFC中 给对话框添加背景图片
查看>>
alter database databasename set single_user with rollback IMMEDIATE 不成功问题
查看>>
idea 系列破解
查看>>
Repeater + Resources 列表 [原创][分享]
查看>>
c# Resolve SQlite Concurrency Exception Problem (Using Read-Write Lock)
查看>>
dependency injection
查看>>
WCF揭秘——使用AJAX+WCF服务进行页面开发
查看>>
C#综合揭秘——细说多线程(下)
查看>>
c#运算符 ?
查看>>
ps互补色
查看>>
Silverlight学习笔记(九)-----RenderTransform特效【五种基本变换】及【矩阵变换MatrixTransform】...
查看>>
【题解】青蛙的约会
查看>>
【eclipse】点Clean后没反应
查看>>
springboot下html的js中使用shiro标签功能
查看>>
求给定字符串的最长子字符串
查看>>
.26-浅析webpack源码之事件流make(1)
查看>>
IO流
查看>>
mybatis调用存储过程,获取返回的游标
查看>>
Android Handler学习笔记
查看>>
设计模式之装饰模式(结构型)
查看>>