hdu 5583 Kingdom of Black and White 思路题

VEML7700环境光传感器原理图设计,已量产(光线传感器) 最近做便携显示设备的自动亮度调节模块,最终敲定了 VEML7700 这款数字光传感器 —— 一是它 0~120klx 的宽量程刚好覆盖 “暗室→户外强光” 的全场景,二是 Filtron™技术让它的光谱响应和人眼高度贴合,测出来的 “亮度” 更符合实际视觉感受,加上 O-Trim™技术把输出公差压到 10% 以内,省了不少后期校准的功夫。搭好电路后串口直接读 lx 数值,稳定性和精度都够,这篇聊聊这个模块的硬件设计细节。 阅读详情

Kingdom of Black and White
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 1206 Accepted Submission(s): 375

Problem Description

In the Kingdom of Black and White (KBW), there are two kinds of frogs: black frog and white frog.

Now N frogs are standing in a line, some of them are black, the others are white. The total strength of those frogs are calculated by dividing the line into minimum parts, each part should still be continuous, and can only contain one kind of frog. Then the strength is the sum of the squared length for each part.

However, an old, evil witch comes, and tells the frogs that she will change the color of at most one frog and thus the strength of those frogs might change.

The frogs wonder the maximum possible strength after the witch finishes her job.

Input

First line contains an integer T, which indicates the number of test cases.

Every test case only contains a string with length N, including only 0 (representing
a black frog) and 1 (representing a white frog).

⋅ 1≤T≤50.

⋅ for 60% data, 1≤N≤1000.

⋅ for 100% data, 1≤N≤105.

⋅ the string only contains 0 and 1.

Output

For every test case, you should output “Case #x: y”,where x indicates the case number and counts from 1 and y is the answer.

Sample Input

2
000011
0101

Sample Output

Case #1: 26
Case #2: 10

Source

2015ACM/ICPC亚洲区上海站-重现赛(感谢华东理工)

Recommend

题意 : 给你一个只含有 "0" "1" 的字符串,问你最多可以改变一个字符串后,连续相同的字符串的长度的平方的和,最大值为多少.

    样例1 : 000011   
        连续为 0 的长度是 4 ,连续为 1 的长度是 2 ,当前的值是4*4+2*2=20; 
        改变第四个 0 为 1 后,连续为 0 的长度是 5 ,连续为 1 的长度是 1 ,当前的值是 5*5+1*1=26;

    样例2 : 0101
        数字连续相同的长度分别为 1 1 1 1 ,当前值为 1*1+1*1+1*1+1*1=4;
        改变第一个 1 为 0 ,或者改变第二个 0 为 1 , 连续相同的长度就为 3 1,当前值为 3*3+1*1=10.
    思路:一个数组存储连续相同数字的个数,遍历一遍,不断更新改变前后的最大值.

#include<stdio.h>
#include<string>
#include<iostream>
#include<algorithm>
#include<string.h>
#include<math.h>
using namespace std;
char s[100005];//字符串存储;
long long  f[100005];//当前位置相同的字符的个数;
int len;

//预处理;
void previous(int len)
{
    memset(f,0,sizeof(f));
    f[0]=1;
    for(int i=0; i<len-1; i++)
    {
        if(s[i]==s[i+1])
        {
            f[i+1]=f[i]+1;
            f[i]=0;
        }
        else
            f[i+1]++;
    }
    int present=f[len-1];
    for(int i=len-2; i>=0; i--)
    {
        if(!f[i])
            f[i]=present;
        else
            present=f[i];
    }
}

int main()
{
    int T,t=1;//t 用来记录case;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%s",s);
        len=strlen(s);//长度;

        //特判,省点时间;可以不要;
        if(len<4)
        {
            printf("%d\n",len*len);
            continue;
        }

        previous(len);//预处理;

        for(int i=0; i<len; i++)
            printf("%d ",f[i]);
        printf("\n");


        long long  sum=f[0]*f[0];
        for(int i=1; i<len; i++)
            if(s[i]!=s[i-1])
                sum+=f[i]*f[i];

//        printf("sum = %d\n",sum);

        long long   now=0,sum1=sum;
        //sum1 用来记录最大值;
        //sum  用来记录初始值;
        //now  用来记录变化当前位置后的值;

        for(int i=1; i<len-1; i++)
        {
            if(s[i]!=s[i-1])//如果前当前位置不等于前边一位;
            {
                if(s[i]==s[i+1])//如果当前位置等于后一位;
                {
                    int a=max(f[i],f[i-1]);
                    int b=min(f[i],f[i-1]);
                    now=sum+  (a+1)*(a+1)+(b-1)*(b-1)-a*a-b*b;
                }
                else //如果当前位置不等于后一位;
                    now=sum -f[i-1]*f[i-1]-f[i+1]*f[i+1]-1+(1+f[i+1]+f[i-1])*(1+f[i+1]+f[i-1]);
                sum1=max(max(sum,now),sum1);
            }
        }
        if(s[len-1]!=s[len-2])//特判最后一位;
            now=sum+(f[len-2]+1)*(f[len-2]+1)-1-f[len-2]*f[len-2];
        sum1=max(now,sum1);
        printf("Case #%lld: %lld\n",t++,sum1);
    }
    return 0;
}
华为OD机试真题 新系统【小花获胜的奶茶】 华为OD机试真题 新系统【小花获胜的奶茶】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题 【小花获胜的奶茶】多语言题解。 阅读详情

相关推荐

Unity WebGL项目如何实现画布透明,完美融入网页背景(附.jslib文件与完整配置)

本文详细解析了Unity WebGL项目实现画布透明化的技术原理与实战步骤,从.jslib文件配置到前端框架集成,帮助开发者解决默认背景色问题,实现3D内容与网页设计的无缝融合。重点介绍了透明化核心机制、常见误区及React/Vue等现代框架中的最佳实践方案。

weixin_31896061的博客 299

2015 ACM/ICPC Asia Regional Shanghai

A. I Count Two Three题目链接题目大意在平面上有一个实心圆,圆心为(Ox,Oy)(O_x, O_y),半径为rr,圆外有一个大小可忽略的小球AA,在(Ax,Ay)(A_x, A_y)处,速度的方向向量为(Vx,Vy)(V_x, V_y),小球AA碰到圆后会反弹,遵循反射定律,求小球AA是否会经过点B(Bx,By)B(B_x, B_y)?思路 - 计算几何模版题,很容易就能想到判断方

idealism_xxm的专栏 752

动态知识图谱构建:从本体论到工程实践

知识图谱作为语义网和人工智能领域的核心技术,旨在通过结构化的方式表示和组织知识。其核心原理在于将实体、概念及其关系建模为图结构,从而支持复杂的语义推理和关联查询。这一技术为机器理解数据间的深层联系提供了基础,在智能推荐、企业知识管理和学术研究等领域具有重要价值。通过结合自然语言处理(NLP)和图数据库技术,系统能够从非结构化数据中自动抽取知识,并构建动态演化的认知网络。本文以“本体论章鱼”项目为例,探讨了如何实现从静态本体到动态知识网络的范式转变,并详细解析了其分布式感知、适应性学习的架构设计,为构建灵活可

weixin_30731305的博客 656

HDU5583 Kingdom of Black and White (暴力)

题解:其实此题还是暴力求解的,首先我们把相邻相同的字符分块,然后对于第i个分块与第i+1个分块,枚举(第i个分块字符个数+1和第i+1个分块字符个数-1)的情况与(第i个分块字符个数-1和第i+1个分块字符个数+1)的情况,需注意的是当第i+1个分块若只有一个字符,那么第i个分块、第i+1个分块、第i+2个分块会合成一个分块,同理,当第i个分块只有一个字符时,第i-1个分块、第i个分块、第i+1个分

围巾的ACM博客 483

基于Java+Maven+Testng+RestAssured+Allure+Jenkins搭建一个接口自动化框架

2、有一个提取表达式列,通过编写每个接口的JSON提取表达式,后边在解析Excel时,对接口执行后的响应数据用该表达式提取出来,保存到环境变量,如果某些接口需要前置接口的响应数据,我们就可以从环境变量中获取该数据出来,从而解决了接口关联的问题。1、在之前介绍过全局配置类Contants中添加一个控制台日志开关控制权限,如果选择为false,则控制台不输出日志,将日志输出到allure报表,选择为true,则在控制台输出日志,不输出到allure报表。

专注于技术分享的博主 1183

FPGA实战:手把手教你实现VESA DSC编码(附Verilog代码解析)

本文详细介绍了如何使用FPGA实现VESA DSC编码器,包括核心架构设计、Verilog代码实现与优化技巧。通过流水线设计、色彩空间转换和预测编码等关键技术,帮助开发者掌握工业级DSC编码器的开发流程,并提供实用的调试与性能优化方法。

weixin_29165725的博客 403

Kingdom of Black and White (分类讨论)

In the Kingdom of Black and White (KBW), there are two kinds of frogs: black frog and white frog. Now N frogs are standing in a line, some of them are black, the others are white. The total strength o...

a1046765624的博客 529

CAPL编程规范与最佳实践

通过本文的学习,读者应该对CAPL编程规范与最佳实践有了初步的了解,并能够编写高质量的CAPL脚本。在实际项目中,CAPL的应用非常广泛,希望读者能够通过不断的学习和实践,掌握更多的CAPL技巧,提高自己的开发能力。

闲人编程的博客 1747

HDU5583 Kingdom of Black and White 暴力枚举

Kingdom of Black and White Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 4909    Accepted Submission(s): 1470 Problem Description In the K...

紫芝的博客 559

2篇5章1节:实验流行病学的核心特征和设计原则

本文系统阐释实验流行病学的核心定义、四大核心特征、四大基本原则及主流设计类型,结合骨科、肿瘤科、儿科、精神科、内外妇儿及公共卫生等多学科临床实践案例,具象化解读人为干预、随机分组、平行对照、前瞻性设计的核心内涵与应用价值。同时,规范梳理对照、随机、盲法、重复四大研究基本原则,详细介绍临床试验、现场试验、社区试验三类主流研究设计的适配场景与应用差异。

MD Code 167

Cursor自动生成测试用例

或者把你已有的规则直接复制粘贴到这个文档内(这里我用的是Markdown格式和CSV格式的测试用例生成规则,可以同时生成Markdown和CSV格式的测试用例)。在AI对话框这里,我们可以看到Cursor会逐步来帮我们生成测试用例,先分析识别需求文档,然后生成测试用例,最后会进行质量检查,确保生成的用例符合规范。生成的Markdown格式,可直接导入Xmind,生成思维导图,对应到具体的功能模块看具体的测试点,逻辑会更直观一些。(1)选中规则文档和需求文档:@你的测试用例规则文档@你的需求文档。

十二测试录 2432

HHUOJ 1021 Kingdom of Black and White(离散化+暴力)

问题 A: Kingdom of Black and White 时间限制: 1 Sec内存限制:64 MB 提交: 18解决: 8 题目描述 In the Kingdom of Black and White (KBW), there are two kinds of mice: black mouse and white mouse. Now N miceare stan...

想飞的小菜鸡 1111

电商平台系统需求规格说明书(示例)

​​电商系统​​:指本文件所描述的集商品展示、销售、支付、物流跟踪、用户管理等功能于一体的综合性在线购物平台。​​API​​:应用程序编程接口(Application Programming Interface),用于实现系统各模块之间或与外部系统之间的数据交互和功能调用。

跟佟格湾一起学习计算机知识吧~ 1262

HDU-5583-Kingdom of Black and White【2015上海赛区】【暴力】

HDU-5583-Kingdom of Black and White

Linoy 1461

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

HDU 5583 Kingdom of Black and White 【贪心】

传送门:HDU 5583 Kingdom of Black and White Problem Description In the Kingdom of Black and White (KBW), there are two kinds of frogs: black frog and white frog. Now N frogs are standing in a line, so...

Waiting For You 248

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

HDU 5583 Kingdom of Black and White [Ad Hoc]

2015上海区域赛 K题Description给一串0和1,然后你可以变一个 这样就分成了若干块 求然后每块长度的平方和最大Algorithm两种情况 一种是长度大于1 这样变两边 一种是长度=1,这样3段就练成一段Hint貌似必须用vector,不然超时?Code#include <cstdio> #include <cstring> #include <iostream> #inclu

more time 229

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

HDU 5583 Kingdom of Black and White

接过队友的锅敲这道题,结果没太想清楚着急直接敲调试了好久。。又被队友嫌弃。。真心为我的代码能力担忧。。 “不要头脑一热就开始写” 下来检查发现当时的代码都写错了。。话说区域赛的数据为何这么弱。。题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5583题意:给定01串,连续的相同字符的长度的记为距离。改变一个字符,使得最后的距离平方和最大。分析:对于每

Tuesday 482

HDU-5583 Kingdom of Black and White(思维)

Kingdom of Black and White Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 2398    Accepted Submission(s): 753 Problem Description

huatian5的博客 451

HDU 5583 Kingdom of Black and White(依旧是暴力)——2015ACM/ICPC亚洲区上海站

HDU 5583 Kingdom of Black and White(依旧是暴力)——2015ACM/ICPC亚洲区上海站

queuelovestack的专栏 3202

hdu 5583 Kingdom of Black and White

传送门: http://acm.hdu.edu.cn/showproblem.php?pid=5583这是本年度上海区域赛的第二水题,也是mark一下我本年度的赛程,虽然最后打铁了!!!!题意: 相当于给你一堆数,你最多可以将其中一个位置的数取反,使得相同连续的数的平方和最大!!!就是把最大的数加1,相邻的数减1,暴力枚举一下位置,再注意特判一下1就ok了,因为它会将前后都聚到一起! 这种lo

yp_2013的博客 653

hdu 5583 Kingdom of Black and White(模拟,技巧)

Problem Description In the Kingdom of Black and White (KBW), there are two kinds of frogs: black frog and white frog. Now N frogs are standing in a line, some of them are black, the other...

dielucuan8830的博客 143

HDU 5583 Kingdom of Black and White(暴力)

http://acm.hdu.edu.cn/showproblem.php?pid=5583 题意: 给出一个01串,现在对这串进行分组,连续相同的就分为一组,如果该组内有x个数,那么就对答案贡献x*x,现在最多可以修改原串中的一个字符,问答案最大可以为多少。 思路:暴力求解。 一开始只需要预处理分块,计算出每一分块的个数,然后暴力处理一下即可,需要注意分块数为1的情况,此时左右两边...

weixin_30426957的博客 106

HDU - 5583 Kingdom of Black and White

In the Kingdom of Black and White (KBW), there are two kinds of frogs: black frog and white frog. Now N frogs are standing in a line, some of them are black, the others are white. The total

zbspy_ZJF的博客 467

hdu 5583 Kingdom of Black and White【枚举】

Kingdom of Black and White Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1323    Accepted Submission(s): 407 Problem Description In t

mengxiang000000 525

HDU-5583-Kingdom of Black and White(预处理+枚举)

Kingdom of Black and White Problem Description In the Kingdom of Black and White (KBW), there are two kinds of frogs: black frog and white frog. Now N frogs are standing in a line, some of them are bl...

qq_43461168的博客 220

HDU 5583 Kingdom of Black and White (暴力)

Kingdom of Black and White Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 0    Accepted Submission(s): 0 Problem Description I

常胜将军的博客 415
上一篇: 湘潭大学中南邀请赛
下一篇: poj 1273 Drainage Ditches 最大流问题.
落幕丶式
博客等级 码龄11年 2粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值