题解 | #字符串分隔#

字符串分隔

http://www.nowcoder.com/practice/d9162298cb5a437aad722fccccaae8a7

  1. 注意我写的这一套模板
    int times = s.size()/8;
    int remain = s.size()%8;
  2. 这种分段是处理最后一步要break,用最后的输出,如果是中途的话那就次次都输出。
  3. 最后一步跳入逻辑 i+1 == times。 以及先判断有余数times++,然后余数为0,余数变8
#include<iostream>
#include<algorithm>
#include<string>

using namespace std;

int main(){

    string s;
    while(cin>>s){
        string tar = "";

        int times = s.size()/8;
        int remain = s.size()%8;

        if(remain!=0) times++; if(remain==0) remain=8;

        for(int i = 0; i< times;i++){

            if( i + 1 == times){

                 for(int j = i*8; j< i*8 + remain;j++){
                        tar+=s[j];
                 }
                 for(int k = 0; k< 8-remain;k++){
                        tar+="0";
                 }

                break;
            }

            string tar_1 = "";
            for(int j = i*8; j< (i+1)*8 ;j++){
                tar_1+=s[j];
            }
            cout<<tar_1<<endl;

        }

       cout<<tar<<endl;

    }


    return 0;
}
算法解析 文章被收录于专栏

这里主要是算法岗的自我思路总结

全部评论

相关推荐

11-27 17:08
已编辑
牛客_产品运营部_私域运营
腾讯 普通offer 24k~26k * 15,年包在36w~39w左右。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务