| Task: | Monistus |
| Sender: | maweiyin24562 |
| Submission time: | 2023-11-03 17:06:53 +0200 |
| Language: | C++ (C++11) |
| Status: | COMPILE ERROR |
Compiler report
input/code.cpp: In function 'bool isClear()':
input/code.cpp:10:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
10 | for(int i=0;i<str.size();i++){
| ~^~~~~~~~~~~
input/code.cpp: In function 'std::string dfs(std::string)':
input/code.cpp:23:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
23 | for(int i=0;i<s.size();i++){//O(n)
| ~^~~~~~~~~
input/code.cpp:26:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
26 | if(i+m>=s.size())
| ~~~^~~~~~~~~~
input/code.cpp:30:35: error: expected ';' before '...Code
#include<bits/stdc++.h>
using namespace std;
string str;
bool isDigit(char c){
return c>='0'&&c<='9';
}
bool isClear(){
for(int i=0;i<str.size();i++){
if(isDigit(str[i]))return false;
}
return true;
}
bool vst=false;
string dfs(string s){
if(s.size()<=1){
return s;
}
string result="";
for(int i=0;i<s.size();i++){//O(n)
if(isDigit(s[i])&&!vst){
int m=s[i]-'0';
if(i+m>=s.size())
result+=s[i];
else
result+=dfs(s.substr(i+1,m));
vst=true;s
}
else{
result+=s[i];
}
}
return result;
}
int main(){
cin>>str;
while(!isClear()){//O(n)
vst=false;
str=dfs(str);
}
cout<<str<<endl;
return 0;
}
