[Uva] Tex Quates (272)

 

UVA - 272
Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu

 Status

Description

TeX is a typesetting language developed by Donald .

If the source contained

"To be or not to be," quoth the bard, "that is the question."

then the typeset document produced by TeX would not contain the desired form:

``To be or not to be," quoth the bard, ``that is the question."

In order to produce the desired form, the source file must contain the sequence:

``To be or not to be,'' quoth the bard, ``that is the question.''

You are to write a program which converts text containing double-quote (") characters into text that is identical except that double-quotes have been replaced by the two-character sequences required by  must be replaced by ``, the next by '', the next by ``, the next by '', the next by``, the next by '', and so on.

Input

Input will consist of several lines of text containing an even number of double-quote (") characters. Input is ended with an end-of-file character.

Output

The text must be output exactly as it was input except that:

  • the first " in each pair is replaced by two ` characters: `` and
  • the second " in each pair is replaced by two ' characters: ''.

Sample Input

"To be or not to be," quoth the Bard, "that
is the question".
The programming contestant replied: "I must disagree.
To `C' or not to `C', that is The Question!"

Sample Output

``To be or not to be,'' quoth the Bard, ``that
is the question''.
The programming contestant replied: ``I must disagree.
To `C' or not to `C', that is The Question!''

地址:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=19396

ac代码:

#include <cstdio>
using namespace std;
int main(){
	int c;
	bool flag = 1;
	while(scanf("%c", &c) != EOF)
		if (c == '"') {printf("%s", flag ? "``":"''"); flag = !flag;}
		else printf("%c", c);
	return 0;
}

题目比代码长n倍典型范例 :)