题解:P14602 [NWRRC 2025] Compact Encoding

· · 题解

模拟题。

做题思路

首先用一个 vector 存一下每 7 个字节的值,与上 127 即可。

如果该块不是最后一个,就要加上 128

最后注意特判,n 等于 0 时输出 0 即可。

代码

压行严重,仅有 14 行,如需观看代码建议前往他人题解。

:::info[这里]

#include<bits/stdc++.h>
using namespace std;
#define int long long
int n;
vector<int> s;
signed main(){
    cin>>n;
    if(!n){ cout<<"0\n"; return 0; } 
    while(n) s.push_back(n&127),n>>=7;
    for(int i=s.size()-1;i>=0;i--)
        if(i) cout<<s[i]+128<<' ';
        else cout<<s[i]<<'\n';
    return 0;
}

:::