蒟蒻求助!!!

题目总版

```cpp #include <bits/stdc++.h> using namespace std; void gene(string s){ int sum=0,sum_=0; for(int i=0;i<(int)s.length();i++)s[i]-'0'?sum_++:sum++; if(sum==(int)s.length())cout<<'A'; else if(sum_==(int)s.length())cout<<'B'; else{ cout<<'C'; gene(s.substr(0,s.length()/2)); gene(s.substr(s.length()/2,s.length()/2)); } } int main(){ string s; cin>>s; gene(s); return 0; } ``` @[Walnutjuice](/user/1185284) 用s.substr()
by yaominghao2007 @ 2023-11-17 21:30:53


gene(substr(0,s.length()/2)); gene(substr(s.length()/2,s.length()/2)); 原因是:substr未定义。 改为: gene(s.substr(0,s.length()/2)); gene(s.substr(s.length()/2,s.length()/2));
by 99999873654as7829 @ 2023-11-17 21:54:36


@[yaominghao2007](/user/276894) 谢谢帮助
by Walnutjuice @ 2023-11-19 13:51:40


``` 各位大佬,本蒟蒻请教一下:请问我换了一个代码,用switch不行,用if else却可以是为什么 ``` ```cpp CE代码: #include <bits/stdc++.h> using namespace std; void gene(string s){ switch(s){ case string((int)s.length(),'0'):putchar('A');break; case string((int)s.length(),'1'):putchar('B');break; default:putchar('C');gene(s.substr(0,s.length()/2)); gene(s.substr(s.length()/2,s.length()/2)); } } int main(){ string s; cin>>s; gene(s); return 0; } ``` ```cpp AC代码: 将switch换成if即可,本蒟蒻不予展示 ```
by Walnutjuice @ 2023-11-19 14:16:21


|