日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2016陕西省ACM省赛 HE 字符串处理 删除注释

發布時間:2023/12/3 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2016陕西省ACM省赛 HE 字符串处理 删除注释 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

HE

發布時間: 2017年3月27日 18:28?? 最后更新: 2017年3月27日 18:30?? 時間限制: 1000ms?? 內存限制: 256M

描述

"Hi there, my name is HE."

在某個秘密的計算機實驗室中,超級人工智能計算機 HE 誕生了。

HE 可以在網絡中搜索合適的程序代碼進行自我升級。在某次升級的過程中,HE 得到了一堆軟件代碼,其中有很多注釋和空行。注釋是為了人類能夠讀懂代碼而寫的,而對于 HE 來說,它并不需要這些東西,因此它會首先刪除掉代碼中的所有注釋以及空行。

這里定義了2種注釋格式:

1.行注釋“//”:符號“//”之后直至行尾的所有內容都被認為是注釋部分;

2.段注釋“/\* ... \*/”:“/\*”表示段注釋開始,“\*/”表示段注釋結束,其間的所有內容都被認為是注釋部分。

科學家發現 HE 的編譯器分析部分出現了一些小問題,現在他們希望你能夠編寫程序幫助 HE 完成這一步驟。

輸入

輸入文件只有一個,其中有許多包含注釋的語言代碼,請讀至文件末尾(EOF)。

輸出

輸出刪除掉注釋之后的代碼。

注:
1.若某一行刪除完注釋之后只剩下空格,則該行也將被視作一個空行,需要一起刪除。
2.需要同時刪除行末的空格。

樣例輸入1?復制 #include<stdio.h> //test int main() {printf("Helloworld.");return 0; } #include<stdio.h> /* ---- ---- */int main() {// testprintf("Goodluck."); // testreturn 0; /* -- */ } 樣例輸出1 #include<stdio.h> int main() {printf("Helloworld.");return 0; } #include<stdio.h> int main() {printf("Goodluck.");return 0; } 題解:

step1()函數用于去除// 以及/**/這類的注釋,把要刪除的地方標記為1,輸出的時候不輸出就可以了

step2()函數用于去除多余的空格以及換行。

思路如下:

每次從一行的開頭檢測,直到檢測到'\n'為止,用pre表示該行第一個空格的位置,如果這一行中有非空格字符,那么標志位f = 1

該行檢測完成以后把beg 到 \n區間全部刪除掉(置值為1),然后判斷f是否為1,如果不為1,那么\n也要刪除掉

#include <cstdio> #include <iostream> using namespace std; char str[1000000]; int length; void read() {char c;while(~scanf("%c",&c))str[length++] = c;str[length++] = '\n';str[length] = 0; } void step1() {char c = str[0];int pos = 0;while(c){if(c == '/'){if(str[pos + 1] == '/')while(str[pos] != '\n') str[pos++] = 1;else if(str[pos + 1] == '*'){while(str[pos + 2] != '*' || str[pos + 3] != '/') str[pos++] = 1; str[pos] = str[pos + 1] = str[pos + 2] = str[pos + 3] = 1;}}c = str[++pos];} } void step2() {char c = str[0];int pos = 0;while(true){if(pos == length) break;int f = 0;int beg = pos;//本行第一個字符 for(;str[pos] != '\n';pos++){if(str[pos] == 1) continue;//已經被刪除過的字符不必考慮在內 if(str[pos] != ' ') {beg = pos + 1;f = 1;}}//pos 指向/nfor(int i = beg;i < pos;i++) str[i] = 1; if(!f) str[pos] = 1;pos ++;}str[length-1] = 1; } void print() {int pos = 0;while(str[pos]){if(str[pos] != 1) putchar(str[pos]);pos++;} } int main() {freopen("test.txt","r",stdin);freopen("out.txt","w",stdout);read();step1();step2();print(); }



總結

以上是生活随笔為你收集整理的2016陕西省ACM省赛 HE 字符串处理 删除注释的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 精品一区久久 | 成人免费在线观看av | 少妇把腿扒开让我舔18 | 国产剧情av在线播放 | 欧美特级一级片 | 成人片免费视频 | 日韩视频在线免费观看 | 一区二区影院 | 激情内射人妻1区2区3区 | 青青草视频成人 | 亚洲综合小说 | 91国产在线免费观看 | 欧美视频精品在线 | bangbros性欧美18 | 懂色av中文字幕 | 国产大片一区二区 | 就爱av | 成人精品免费在线观看 | 欧美挤奶吃奶水xxxxx | 欧美亚洲一区二区三区 | 少妇高潮毛片色欲ava片 | 五月婷婷六月激情 | 欧美性受xxx黑人xyx性爽 | 国产成人av一区二区三区在线观看 | 亚洲女人视频 | 国产美女精品一区二区三区 | 性欧美巨大乳 | 闷骚老干部cao个爽 av九九九 | 亚洲男人的天堂在线观看 | 欧美精品在线免费观看 | 日本色呦呦 | 国产黄色网页 | 精品人人人人 | 精品一区二区三区人妻 | 91在线免费看 | 日韩一区二区三区视频在线 | 蜜臀av性久久久久蜜臀aⅴ麻豆 | 91gao| 日韩专区一区二区三区 | 丁香七月婷婷 | 欧美三级欧美一级 | 成人午夜看片 | 国产精品7777| 青青草www| 特级西西人体444www高清大胆 | 在线免费观看成年人视频 | 无码免费一区二区三区免费播放 | 国产香蕉一区 | 男欢女爱久石 | 一级特黄a | 欧美妞干网 | 国产免费播放 | 成人在线视频免费观看 | 99自拍偷拍视频 | 78m78成人免费网站 | 亚洲最大看欧美片网站 | 黄色小说在线免费观看 | 毛片毛片毛片毛片毛片 | cao在线 | 奇米激情| 色香影视 | 日韩性生活视频 | 国产麻豆午夜三级精品 | 色哟哟欧美精品 | 中国亚洲老头同性gay男男… | 青草精品在线 | 国产一区二区三区久久 | 1024手机看片日韩 | 国产一区在线观看免费 | 桃色一区二区 | 多男调教一女折磨高潮高h 国内毛片毛片毛片毛片毛片 | 91久精品 | h网站在线播放 | 欧美日韩一区二区三区在线播放 | 日本亲子乱子伦xxxx50路 | av黄色影院| 欧美成性色 | 天堂在线资源库 | 亚洲高潮av | 久久久久久久久久电影 | 蜜桃成熟时李丽珍在线观看 | av免费入口| 国产在线一级 | 探花视频在线观看 | 日本美女毛茸茸 | 婷婷国产一区二区三区 | 日韩五码在线 | 免费看裸体网站 | 一区二区精品国产 | 麻豆传媒一区二区三区 | 性欧美bbw | 91成年影院 | 日日夜夜操av| 香蕉一区二区三区四区 | 在线免费黄色网址 | 日韩欧美亚洲综合 | 亲嘴扒胸摸屁股免费视频日本网站 | 一区二区自拍偷拍 | 国产熟女一区二区三区五月婷 |