求助
  • 板块灌水区
  • 楼主___define___
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/3/19 21:50
  • 上次更新2024/3/20 12:38:27
查看原帖
求助
790516
___define___楼主2024/3/19 21:50

link

#include<bits/stdc++.h>
using namespace std;
int a1,a2,a3;
string s;
int main(){
    cin>>a1>>a2>>a3>>s;
    for(int i=0;i<s.size();i++)
    {
        if(s[i]!='-') cout<<s[i];
        if(s[i]=='-'){
            if(s[i-1]>=s[i+1]){cout<<'-';continue;}
            if(int(s[i+1]-s[i-1])==1){continue;}
            int z[1919810];
            int ans=0;
            if(a3==1)
                for(int j=s[i-1]+1;j<s[i+1];j++)
                    for(int x=1;x<=a2;x++)
                        z[ans++]=char(j);
            if(a3==2)
                for(int j=s[i+1]-1;j>=s[i-1]+1;j--)
                    for(int x=1;x<=a2;x++)
                        z[ans]=j,ans++;
            
            if(a1==2&&(s[i-1]>'9'||s[i-1]<'0'))
                for(int j=0;j<ans;j++)
                    z[j]-=32;
            if(a1==3)
				for(int j=0;j<ans;j++)
                    z[j]='*';
            for(int j=0;j<ans;j++)
                cout<<char(z[j]);
        }
    }
    return 0;
}
2024/3/19 21:50
加载中...