码迷,mamicode.com
首页 > 其他好文 > 详细

Sicily 1133. SPAM

时间:2014-11-15 01:26:49      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   ar   os   sp   for   

题目地址:1133. SPAM

思路:

     题目意思是说在‘@’的前后出现题目给定的合法字符或者不连续出现‘.’字符的话,这个就是合理的输出。

     那么以@为中心,向前,向后扫描,当扫描到不符合字符时,记录此时位置,以前后为区间,输出字符。

     具体代码如下:

 1 #include <iostream>
 2 #include <string>
 3 using namespace std;
 4 
 5 bool is_ok(char ch) {
 6     if ((ch >= A&&ch <= Z) || (ch >= a&&ch <= z) ||
 7         (ch >= 0&&ch <= 9) || ch == -||ch == _) {
 8            return true;
 9     }
10     return false;
11 }
12 
13 int main() {
14     string test;
15     while (getline(cin, test)) {
16         if (test.size() == 0) continue;
17         for (int i = 1; i < test.size()-1; i++) {
18             if (test[i] == @&&is_ok(test[i-1])&&is_ok(test[i+1])) {
19                 int begin, end;
20                 for (begin = i-1; begin >= 0; begin--) {
21                     if ((test[begin] == .&&test[begin+1] == .)) {
22                         break;
23                     }
24                     if (test[begin] != .&&!is_ok(test[begin])) {
25                         break;
26                     }
27                 }
28                 if (test[begin+1] == .) begin++;
29                 for (end = i+1; end < test.size(); end++) {
30                     if ((test[end] == .&&test[end-1] == .)) {
31                         break;
32                     }
33                     if (test[end] != .&&!is_ok(test[end])) {
34                         break;
35                     }
36                 }
37                 if (test[end-1] == .) end--;
38                 for (int j = begin+1; j <= end-1; j++) {
39                     cout << test[j];
40                 }
41                 cout << endl;
42             }
43         }
44      }
45     
46     return 0;
47 }

 

Sicily 1133. SPAM

标签:style   blog   http   io   color   ar   os   sp   for   

原文地址:http://www.cnblogs.com/winray/p/4098611.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!