zoukankan      html  css  js  c++  java
  • 美丽的字符正方形FINAL

    输入一个长度不超过50的由小字字母构成的字符串,输出由这个字符序列构成的最大的正方形。

    输入格式:
    由小写字母构成的一个字符串。
    输出格式:
    将字符串围成最大可能的正方形输出,字符串从正方形的左上方开始,按顺时针方向绕行。

    输入样例1:

    a

     输出样例1:

    a

     输入样例2:

    happy

    输出样例2:

    ha
    pp

    输入样例3:

    abcdefghijklmn

    输出样例3:

    abcd
    l  e
    k  f
    jihg

    (摘自pintia.cn)

    解答:

     1 #include<iostream>
     2 #include<string>
     3 using namespace std;
     4 int main()
     5 {
     6     string str;                    //输入的字符串
     7     int side,row(1);            //side是边长,row是第几行
     8     cin>>str;                    //输入字符串
     9     side=str.length()/4+1;        //计算边长
    10     for(int i(0);i<side;i++)    //输出第一行,长度为side
    11         cout<<str[i];
    12     if(side>1)                    //如果行数大于1
    13     {
    14         cout<<endl;
    15         for(;row<side-1;row++)    //输出剩余side-2行,不包括最后一行
    16         {
    17             cout<<str[(side-1)*4-row];
    18             for(int k(0);k<side-2;k++)
    19                 cout<<' ';
    20             cout<<str[(side-1)+row]<<endl;
    21         }
    22         for(int i(0);i<side;i++)    //输出最后一行
    23             cout<<str[(side-1)*3-i];
    24     }
    25     return 0;
    26 }

    解析:

      见代码注释。

      std::ends和‘ ’的输出不同,std::ends的输出结果为‘’,虽然输出的样式相同,但是不是同一个字符。

  • 相关阅读:
    感悟.学习的方式
    IOS地理信息使用
    IOSTimer的例子留个备注
    IOSSelector的用法
    ios中addtarget的用法
    ios绘图时的坐标处理
    mac下装Ruby
    iOSbase64
    ios跳转
    Misha and Palindrome Degree CodeForces
  • 原文地址:https://www.cnblogs.com/wzzdeblog/p/10615324.html
Copyright © 2011-2022 走看看