当前位置: 首页 > news >正文

[16届蓝桥杯 2025 c++省 B] 水质检测

思路:分类讨论,从左到右枚举,判断当前的河床和下一个河床的距离是第一行更近还是第二行更近还是都一样近,分成三类编写代码即可
 

#include<iostream>
using namespace std;
int main(){
    string s1,s2;
    cin>>s1>>s2;
    s1=' '+s1;
    s2=' '+s2;
    int n=s1.size();
    int l=n,r=1;
    for(int i=1;i<n;++i){
        if(s1[i]=='#'||s2[i]=='#'){
            l=min(l,i);
            r=max(r,i);
        }
    }
    int ans=0;
    for(int i=l;i<r;++i){
        if(s1[i]=='#'&&s1[i+1]=='.'&&s2[i]=='.'){
            ans++;
            s1[i+1]='#';
        }
        else if(s2[i]=='#'&&s2[i+1]=='.'&&s1[i]=='.'){
            ans++;
            s2[i+1]='#';
        }
        else if(s1[i]=='#'&&s2[i]=='#'&&s1[i+1]=='.'&&s2[i+1]=='.'){
            int j1=i+1,j2=i+1;
            while(s1[j1++]=='.');
            while(s2[j2++]=='.');
            if(j1<=j2){
                ans++;
                s1[i+1]='#';
            }
            else{
                ans++;
                s2[i+1]='#';
            }
        }
    }
    cout<<ans;
    return 0;
}

相关文章:

  • Axure疑难杂症:详解横向菜单左右拖动效果及阈值说明
  • 在Fortran程序中嵌入Lua解释器
  • windows下Git安装及其IDEA配置
  • Spring - 13 ( 11000 字 Spring 入门级教程 )
  • Linux : 多线程互斥
  • 智享 AI直播3.0时代:无人智能系统如何颠覆传统拓客模式?‌‌
  • 计算机组成原理-指令系统
  • 集合框架二三事
  • 供应链业务-供应链全局观(三)- 供应链三流的集成
  • Transformer模型中的两种掩码
  • RK3588上Linux系统编译C/C++ Demo时出现BUG:The C/CXX compiler identification is unknown
  • 双向链表专题(C语言)
  • RK3576 GPIO 配置与使用
  • 【Docker】离线安装Docker
  • 【土堆 PyTorch 教程总结】PyTorch入门
  • 【频域分析】功率谱
  • Conda与Pip:Python包管理工具的对比与选型
  • Day15:关于MySQL的编程技术——基础知识
  • MDP最优控制问题转化为可求解的线性规划
  • dify应用例子
  • 上海国际碳中和博览会下月举办,首次打造民营经济专区
  • 龚正会见哥伦比亚总统佩特罗
  • 巴基斯坦与印度停火延长至18日
  • 美将解除对叙利亚制裁,外交部:中方一贯反对非法单边制裁
  • 基金经理调仓引发大金融板块拉升?公募新规落地究竟利好哪些板块
  • 十年磨一剑!上海科学家首次揭示宿主识别肠道菌群调控免疫新机制