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];elseresult+=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;}