题解 | #1005.List Reshape# 2023杭电暑期多校9

1005.List Reshape

签到题

题目大意

按一定格式给定一个纯数字一维数组,按给定格式输出成二维数组。

解题思路

读入初始数组字符串,将每个数字分离,按要求输出即可

参考代码

参考代码为已AC代码主干,其中部分功能需读者自行实现

#define N 100005
char s[N]={0};
vector nums;
void getnums(){
    string ts;ll len=strlen(s);char c;
    FORLL(i,0,len){
        c=s[i];
        if(c>='0'&&c<='9') ts.push_back(c);
        else if(ts.size()){
            nums.emplace_back(ts);
            ts.clear();
        }
    }
}
void solve()
{
    getchar();gets(s);
    ll n,m;scanf("%lld%lld",&n,&m);
    nums.clear();getnums();
    //print_vec(nums);
    cout << '[';
    FORLL(i,0,n-1){
        cout << '[';
        FORLL(j,0,m-1){
            cout << nums[i*m+j];
            if(m-1-j) cout << ", ";
        }cout << "]";
        if(n-1-i) cout << ", ";
    }cout << ']' << endl;
}

你可能感兴趣的:(2023杭电多校,c++)