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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

叠筐

發(fā)布時(shí)間:2023/12/1 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 叠筐 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Problem Description
需要的時(shí)候,就把一個(gè)個(gè)大小差一圈的筐疊上去,使得從上往下看時(shí),邊筐花色交錯(cuò)。這個(gè)工作現(xiàn)在要讓計(jì)算機(jī)來完成,得看你的了。

Input
輸入是一個(gè)個(gè)的三元組,分別是,外筐尺寸n(n為滿足0< n<80的奇整數(shù)),中心花色字符,外筐花色字符,后二者都為ASCII可見字符;

Output
輸出疊在一起的筐圖案,中心花色與外筐花色字符從內(nèi)層起交錯(cuò)相疊,多筐相疊時(shí),最外筐的角總是被打磨掉。疊筐與疊筐之間應(yīng)有一行間隔。

Sample Input
11 B A
5 @ W

Sample Output

AAAAAAAAA ABBBBBBBBBA ABAAAAAAABA ABABBBBBABA ABABAAABABA ABABABABABA ABABAAABABA ABABBBBBABA ABAAAAAAABA ABBBBBBBBBAAAAAAAAAA @@@ @WWW@ @W@W@ @WWW@@@@

代碼如下:

#include < iostream> #include <cstdio> using namespace std; char s [100][100] ; //首先定義一個(gè)字符數(shù)組; int main() {char a,b;int n;int f=0;while(~scanf("%d %c %c",&n,&a,&b))//多組數(shù)據(jù)輸入n,a,b;{if(f) cout<< endl;//注意格式的輸入,首先,f=0,換行;/*cout<<endl 表示輸出換行的意思。endl=end of line換句話說就是讓屏幕上輸出的內(nèi)容換行到下一行。 使用前需要使用#include<iostream>的頭文件,以及在對應(yīng)的函數(shù)中寫入using namespace std或者std::endl;*/if(n==1)//如果只有一個(gè),就輸出第一個(gè)字符a;{cout<< a<< endl;continue;//然后結(jié)束;}int x=n/2+1;//這里的x,為了確定字符數(shù)組`中間的`字符是什么;s[x][x]=a;//字符a,即為中間的字符;for(int i=1;i<=n/2;i++)//這里第一個(gè)for循環(huán)為了控制圈數(shù),從里到外有幾圈;{for(int j=x-i;j<=x+i;j++)//第二個(gè)for循環(huán)控制每一圈;{if(i%2)s[x-i][j]=s[x+i][j]=s[j][x-i]=s[j][x+i]=b;elses[x-i][j]=s[x+i][j]=s[j][x-i]=s[j][x+i]=a;}}s[1][n]=s[1][1]=s[n][1]=s[n][n]=' ';//整個(gè)數(shù)組的四個(gè)角都為空格;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){cout << s[i][j];//以次輸出字符數(shù)組;}cout << endl;}f=1;//第二次不用換行;}return 0; }

總結(jié)

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

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。