L1-027 出租
就是记录保存
#include<vector>
#include<string>
#include<iostream>
#include<unordered_map>
using namespace std;
static const auto io_sync_off = []() {
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
return nullptr;
}();
int vis[10],ans[10];
vector<int> arr;
int main()
{
string str;
cin>>str;
for(char c:str)
vis[c-'0']=1;
int tot=0;
unordered_map<int,int> m;
for(int i=9;i>=0;--i)
if(vis[i])
{
m[i]=tot;
ans[tot++]=i;
}
for(char c:str)
arr.push_back(m[c-'0']);
cout<<"int[] arr = new int[]{";
for(int i=0;i<tot;++i)
cout<<ans[i]<<",}"[i==tot-1];
cout<<";\nint[] index = new int[]{";
for(int i=0;i<arr.size();++i)
cout<<arr[i]<<",}"[i==arr.size()-1];
cout<<";";
return 0;
}