nucoj 1067

来源:互联网 发布:孙耀琦网络直播 编辑:程序博客网 时间:2024/06/08 14:21
可不能光做水题啊,这是一道排版题。。对我来说相当有难度啊,第一次用vector。。。。话说真的挺好用
#include <iostream>#include <vector>using namespace std;void fun(int s,int n){int i,j,k,col;vector<int> v;col=s+2;if(n==0){for(i=0;i<col;i++)if(i==0||i==col-1)cout<<" ";elsecout<<"-";cout<<endl;for(k=0;k<s;k++){for(i=0;i<col;i++)if(i==0||i==col-1)cout<<"|";elsecout<<" ";cout<<endl;}for(i=0;i<col;i++)cout<<" ";cout<<endl;for(k=0;k<s;k++){for(i=0;i<col;i++)if(i==0||i==col-1)cout<<"|";elsecout<<" ";cout<<endl;}for(i=0;i<col;i++)if(i==0||i==col-1)cout<<" ";elsecout<<"-";}else{while(n!=0){v.push_back(n%10);n=n/10;}for(i=v.size()-1;i>=0;i--){if(v[i]==1||v[i]==4){for(j=0;j<col;j++)cout<<" ";}elsefor(j=0;j<col;j++){if(j==0||j==col-1)cout<<" ";elsecout<<"-";}cout<<" ";}cout<<endl;for(k=0;k<s;k++){for(i=v.size()-1;i>=0;i--){if(v[i]==1||v[i]==2||v[i]==3||v[i]==7)for(j=0;j<col;j++){if(j==col-1)cout<<"|";elsecout<<" ";}else if(v[i]==5||v[i]==6)for(j=0;j<col;j++){if(j==0)cout<<"|";elsecout<<" ";}elsefor(j=0;j<col;j++){if(j==0||j==col-1)cout<<"|";elsecout<<" ";}cout<<" ";}cout<<endl;}for(i=v.size()-1;i>=0;i--){if(v[i]==1||v[i]==7||v[i]==0){for(j=0;j<col;j++)cout<<" ";}elsefor(j=0;j<col;j++){if(j==0||j==col-1)cout<<" ";elsecout<<"-";}cout<<" ";}cout<<endl;for(k=0;k<s;k++){for(i=v.size()-1;i>=0;i--){if(v[i]==1||v[i]==3||v[i]==4||v[i]==5||v[i]==7||v[i]==9)for(j=0;j<col;j++){if(j==col-1)cout<<"|";elsecout<<" ";}else if(v[i]==2){for(j=0;j<col;j++){if(j==0)cout<<"|";elsecout<<" ";}}elsefor(j=0;j<col;j++){if(j==0||j==col-1)cout<<"|";elsecout<<" ";}cout<<" ";}cout<<endl;}for(i=v.size()-1;i>=0;i--){if(v[i]==1||v[i]==7||v[i]==4){for(j=0;j<col;j++)cout<<" ";}elsefor(j=0;j<col;j++){if(j==0||j==col-1)cout<<" ";elsecout<<"-";}cout<<" ";}}cout<<endl;}int main(){int s,n;cin>>s>>n;while(s!=0){fun(s,n);cin>>s>>n;cout<<endl;}return 0;}

原创粉丝点击