weixin_41429120 2021-05-09 14:21 采纳率: 34.6%
浏览 65
已结题

请教一下这道C++题,NOIP,急急急

  • 写回答

5条回答 默认 最新

  • 白驹_过隙 算法领域新星创作者 2021-05-09 15:03
    关注
            #include <iostream>
            #include <string>
            using namespace std;
            string str1,str2;
            int main() {
              	cin>>str1>>str2;
              	if(str1.length()<str2.length())
              		swap(str1,str2);
              	for(int i=0; i<str1.length(); i++) {
              		int num=0,ii=i;
              		for(int j=0; j<str2.length(); j++) {
              			if(str2[j]-'0'+str1[ii++]-'0'<=3) {
              				num++;
              				if(ii>=str1.length()) {//1.有重合但超出str1范围
              					cout<<str1.length() +str2.length()-num;
              					return 0;
              				}
              			} else
              				break;
              		}
              		if(num==str2.length()) {//2. str1包含 str2 
              			cout<<str1.length();
              			return 0;
              		}
              
              	}
              	cout<<str1.length()+str2.length();//3.都不包含 
              	return 0;
              }
              /*
              2112112112
              2212112
              10
              2112112112
              2212112112222122
              23
              */
              
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程