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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

poj1578

發布時間:2025/4/16 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 poj1578 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

字符串處理麻煩題

View Code //zoj1702 #include <iostream> #include <string> using namespace std;const int maxlength = 2001, maxl = 100, maxc = 30;string header, nextheader, word[maxl][maxc]; int lnum, cnum, csize[maxc];void init() {string st;int l = 0, c = 0, i;memset(csize, 0, sizeof(csize));cnum = header.length();while (1){getline(cin, nextheader);if (nextheader[0] == '>' || nextheader[0] == '<' || nextheader[0] == '=' || nextheader[0] == '*')break;for (i = 0; i < cnum - 1; i++){word[l][i] = nextheader.substr(0, nextheader.find("&"));nextheader.erase(0, nextheader.find("&") + 1);if (int(word[l][i].length()) > csize[i])csize[i] = word[l][i].length();}word[l][cnum - 1] = nextheader;if (int(word[l][cnum - 1].length()) > csize[cnum - 1])csize[cnum - 1] = word[l][cnum - 1].length();l++;}lnum = l; }void printl(int w, string st) {int i, l = w - st.length();cout << st;for (i = 0; i < l; i++)cout << " "; }void printc(int w, string st) {int i, l = w - st.length();for (i = 0; i < l / 2; i++)cout << " ";cout << st;for (i = 0; i < l / 2; i++)cout << " ";if (l % 2 != 0)cout << " "; }void printr(int w, string st) {int i, l = w - st.length();for (i = 0; i < l; i++)cout << " ";cout << st; }void printword(int i, string st) {switch (header[i]){case '<': printl(csize[i], st); break;case '=': printc(csize[i], st); break;case '>': printr(csize[i], st); break;} }void print() {int i, j;//first linecout << "@-";for (i = 0; i < cnum - 1; i++){for (j = 0; j < csize[i]; j++)cout << "-";cout << "---";}for (j = 0; j < csize[cnum - 1]; j++)cout << "-";cout << "-@";cout << endl;//second linecout << "|";for (i = 0; i < cnum; i++){cout << " ";printword(i, word[0][i]);cout << " |";}cout << endl;//third linecout << "|-";for (i = 0; i < cnum - 1; i++){for (j = 0; j < csize[i]; j++)cout << "-";cout << "-+-";}for (j = 0; j < csize[cnum - 1]; j++)cout << "-";cout << "-|";cout << endl;//other linesfor (j = 1; j < lnum; j++){cout << "|";for (i = 0; i < cnum; i++){cout << " ";printword(i, word[j][i]);cout << " |";}cout << endl;}//last linecout << "@-";for (i = 0; i < cnum - 1; i++){for (j = 0; j < csize[i]; j++)cout << "-";cout << "---";}for (j = 0; j < csize[cnum - 1]; j++)cout << "-";cout << "-@";cout << endl; }int main() { // freopen("t.txt", "r", stdin); // freopen("y.txt", "w", stdin); getline(cin, header);while (header[0] != '*'){init();print();header = nextheader;}return 0; }

?

轉載于:https://www.cnblogs.com/rainydays/archive/2013/03/26/2982711.html

總結

以上是生活随笔為你收集整理的poj1578的全部內容,希望文章能夠幫你解決所遇到的問題。

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