看了你的讲解很有启发,不过方法一好像有些问题,int ans=0;int vis[12]={0};string str;这三个作为全局变量能够通过测试,但是作为局部变量就会出错。经过调试发现int num=(int)str[i];中num得到的是0-9对应的ascall码,数值都在48-57之间。上面数组作为局部变量时因为vis[48-57]的位置未初始化为0,所以不能通过测试,而数组作为全局变量时48-57的位置会自动初始化为0,即使数组下标错误也能得到正确结果。改良的方法是(int)str[i]; int num = str[i] - '0';将num由ascall码转化为对应的字符。
4

相关推荐

AAA专业长城贴瓷砖刘大爷:这样的简历我会直接丢进垃圾桶,花里胡哨的
点赞 评论 收藏
分享
06-13 15:45
辽宁大学 golang
咱就是说 你不主动 我也不会主动下一步hhh,急死了
恶龙战士:不建议把这种帖子发到牛客上,建议去小红书发
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务