P1210 [USACO1.3] 最长的回文 Calf Flac

东华大学2020考研计算机OJ题目解答分享——进阶篇(79) 79 母牛制造的回文 作者: xxx时间限制: 1S章节: 字符串 问题描述 : 据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去这些牛制造的奇观(最棒的回文)。在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母’A’-‘Z’和’a’-‘z’。要你寻找的最长的回文的文章是一个不超过20,000个字符... 阅读详情

[USACO1.3] 最长的回文 Calf Flac

题目描述

据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘 ), 那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。

在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出), 只用考虑字母 A∼Z{\tt A}\sim {\tt Z}A∼Z 和 a∼z{\tt a}\sim {\tt z}a∼z。要你寻找的最长的回文的文章是一个不超过 20,00020{,}00020,000 个字符的字符串。我们将保证最长的回文不会超过 2,0002{,}0002,000 个字符(在除去标点符号、空格之前)。

输入格式

输入文件不会超过 20,00020,00020,000 字符。这个文件可能一行或多行,但是每行都不超过 808080 个字符(不包括最后的换行符)。

输出格式

输出的第一行应该包括找到的最长的回文的长度。

下一行或几行应该包括这个回文的原文(没有除去标点符号、空格),把这个回文输出到一行或多行(如果回文中包括换行符)。

如果有多个回文长度都等于最大值,输出最前面出现的那一个。

样例 #1

样例输入 #1

Confucius say: Madam, I'm Adam.

样例输出 #1

11
Madam, I'm Adam

提示

题目翻译来自NOCOW。

USACO Training Section 1.3

#include<iostream>
#include<cstring>
using namespace std;
char org[200001];
char line[90];
int pos[200001];
char pur[200001];
int pl=0;
bool chk(int st,int length)
{
    if(st+length>pl)return false;
    for(int i=0;i<length/2;i++)
    {
        if(pur[i+st]!=pur[st+length-i-1])
            return false;
    }
    return true;
}
int main()
{
    while(cin.getline(line,88))
    {
        strcat(org,line);
        strcat(org,"\n");
    }
    int length=strlen(org);
    for(int i=0;i<length;i++)
    {
        if(org[i]>='a'&&org[i]<='z')
        {
            pur[pl]=org[i];
            pos[pl]=i;
            pl++;
        }
        if(org[i]>='A'&&org[i]<='Z')
        {
            pur[pl]=org[i]+32;
            pos[pl]=i;
            pl++;
        }
    }
    int maxn=-1,st=0;
    for(int i=0;i<pl;i++)
    {
        for(int j=maxn+1;j<=2010;j++)
        {
            if(chk(i,j)&&j>maxn)
            {
                maxn=j;
                st=i;
            }
        }
    }
    cout<<maxn<<endl;
    for(int i=pos[st];i<=pos[st+maxn-1];i++)
    {
        cout<<org[i];
    }
    return 0;
}
题解:洛谷 P1259 黑白棋子的移动 移动棋子的规则是:每次必须同时移动相邻的两个棋子,颜色不限,可以左移也可以右移到空位上去,但不能调换两个棋子的左右位置。每次移动必须跳过若干个棋子(不能平移),要求最后能移成黑白相间的一行棋子。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。若干行,表示初始状态和每次移动的状态,用 o 表示白子,* 表示黑子,- 表示空行。个棋子排成一行,开始为位置白子全部在左边,黑子全部在右边,如下图为。任务:编程打印出移动过程。#普及# #DFS-一维# 阅读详情

相关推荐

USACO中的Calf Flac

Usaco中第一章中的一道题,挺有意思的。我的程序中间用到了折半查找,牺牲空间求效率

洛谷 P1210 [USACO1.3]最长的回文 Calf Flac

P1210 [USACO1.3]最长的回文 Calf Flac https://www.luogu.com.cn/problem/P1210 思路: 暴力每个字符,以每个字符为中心往两边扩展求最长的回文串的长度。详细看代码。 Code: #include <bits/stdc++.h> using namespace std; typedef long long ll; cons...

NaNa 1214

Manimgl 进阶笔记

目录 一、调整视频输出的纵横比 二、调整预览窗口的尺寸 三、在开发工具中直接调试 一、调整视频输出的纵横比 调整输出视频的纵横比,在日常开发中属于比较基本的需求。要使用 Manimgl 得到期望的分辨率的视频输出需要修改以下几个地方: 第一步:在 custom_config.yml 配置文件中通过 camera_qualities设置视频的输出分辨率。manimlib 框架已经在 default_config.yml 文件中设置了四种视频输出分辨率,default_qualities 参数.

gunnery的专栏 2859

USACO 1.3 Calf Flac (最长回文子串 DP动态规划)

#include #define DEBUG 0 #define TESTCASES 8 #define MAX_CHARS 20000 //原字符串 char arrayOfChars[MAX_CHARS + 1]; int numOfChars; //过滤非字母字符并把大写字母转换成小写字母的字符串 char arrayOfLetters[MAX_CHARS + 1]; int num

TiuTiu Zone 778

倍福TC3 PLC高速采集实战:如何用PLC-Recorder实现0.24ms级时间戳同步

本文详细介绍了倍福TC3 PLC与PLC-Recorder实现0.24ms级时间戳同步的工程实践方案。通过硬件拓扑设计、时间源选择优化、报文结构封装及同步验证方法,为工业自动化领域的高精度数据采集提供了可靠解决方案,特别适用于精密装配、激光切割等微秒级同步要求的场景。

weixin_29193359的博客 373

【ros】ROS1的安装和相关使用方法

主要学习ros相关内容

Greary的博客 2379

[USACO 1.3] 最长的回文 Calf Flac(c++)

在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母'A'-'Z'和'a'-'z'。要你寻找的最长的回文的文章是一个不超过20,000个字符的字符串。据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。下一行或几行应该包括这个回文的原文(没有除去标点符号、空格),把这个回文输出到一行或多行(如果回文中包括换行符)。输出的第一行应该包括找到的最长的回文的长度。

2301_79696886的博客 676

解决TexStudio编写LaTeX论文引用文献问题:正文引用处出现[?],参考文献也不显现

当我们利用LaTeX编写论文时,可能会出现引用参考文献时正文引用处出现?号,肯能的原因及解决方案如下: 问题一 忘记在\end{document}前面放\bibliographystyle{样式}和\bibliography{参考文献bib文件名}: \bibliographystyle{plain} \bibliography{sample} 其中, LaTeX 标准选项及其样式共有以下8种: plain,按字母的顺序排列,比较次序为作者、年度和标题. unsrt,样式同plain,只是按照引用的先后

左手の明天的博客 9529

洛谷 P1210 [USACO1.3] 最长的回文 Calf Flac(内有完整思路)[Manacher 算法][字符串]

摘要:题目要求在一个包含标点、空格和换行符的字符串(最长20,000字符)中找出最长的回文子串。判断回文时需忽略非字母字符,且字母不区分大小写。输出需保留原字符串的所有字符。解决方案包括:1)读取并保留原字符串;2)过滤出字母并记录原索引;3)使用Manacher算法在过滤后的字母序列中高效查找最长回文;4)根据索引还原原始格式输出。算法复杂度为O(n),能处理最长2,000字符的回文。关键点在于正确处理非字母字符和保留原始格式输出。

2503_94472084的博客 334

《QGIS快速入门与应用基础》239:指北针样式选择(预设/自定义)

系统解析指北针设计的核心规范与实操方法。文章首先强调行业规范红线,包括强制要求N字标注、箭头辨识度等关键要素,通过正误示例对比强化合规意识。其次详细讲解QGIS内置预设样式的分类应用,提供极简箭头、标准三角箭头等4类样式的选型对照表,并配图说明适用场景。最后介绍从基础微调到SVG导入的进阶自定义方法,帮助用户实现从合规到专业的样式设计。全文贯穿"合规优先、可读为本、美观为辅"原则,配有详细操作截图与规范对照表,适合从GIS新手到专业制图人员参考。

LuckyHanMo的博客 531

具身智能:原理、算法与系统 第16章 运动控制基础

实时迭代(Real-Time Iteration, RTI)策略在每个采样时刻执行有限次迭代(通常一次),利用相邻时刻解的连续性,在严格时间限制内获得可行解。比例-积分-微分(Proportional-Integral-Derivative, PID)控制是工业界最广泛应用的控制策略,其原理基于误差的当前值(比例)、累积值(积分)与变化率(微分)的线性组合。力-位置混合控制(Hybrid Force/Position Control)将任务空间分解为力控制子空间与位置控制子空间,分别控制。

VectorShift的博客 146

洛谷 P1210 [USACO1.3] 最长的回文 Calf Flac

要你寻找的最长的回文的文章是一个不超过 20,000 个字符的字符串。我们将保证最长的回文不会超过 2,000 个字符(在除去标点符号、空格之前)。据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘 ), 那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。输入文件不会超过 20,000 字符。下一行或几行应该包括这个回文的原文(没有除去标点符号、空格),把这个回文输出到一行或多行(如果回文中包括换行符)。输出的第一行应该包括找到的最长的回文的长度。

2601_95518768的博客 26

R语言中如何获取前向选择(forward selection)选出的变量

前向选择是一种常用的特征选择方法,可以在给定一个预测模型的情况下,逐步添加变量来确定最佳的预测模型。在R语言中,可以使用适当的函数和库来执行前向选择,并获取选出的变量。以下是一个详细的步骤,展示了如何使用R语言执行前向选择并获得选出的变量。通过按照上述步骤,你可以使用R语言执行前向选择,并获取选出的变量。记住,前向选择是一种特征选择方法,可以根据不同的评估指标选择最佳的预测模型。接下来,准备用于前向选择的数据。使用"summary"函数查看前向选择的摘要,并使用"which"函数获取被选中的变量。

WangWEel的博客 924

usaco-Calf Flac 最长的回文

题已不在~ important points:1、char a=tolower(b), tolower可以把所有大写字母转换为小写字母,其他符号均不改变. thinking:2个for的O(N^2)循环,从开头开始找,先判断首尾字符是否相等且大于maxn(已找到最长回文数),然后把所有字母都存到一个新的数组,然后判断其是否为回文串且长度大于maxn,如果大于则pos1=i,pos2=j.然后最

yeleng的博客 755

C#操作MySQL从入门到精通(1)——安装MySQL数据库

我们使用C#操作MySQL数据库第一步要做的就是安装MySQL数据库,本文就是详细讲解如何安装MySQL数据库。

qq_34059233的博客 963

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

USACO 1.3 Calf Flac

代码很挫的,不过是自己借鉴大牛的思路后写的…… /* ID: wangxin12 PROG: calfflac LANG: C++ */ #include #include #include #include #include #include #include using namespace std; #define MAX 20

546

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Chapter 1 Calf Flac

Calf Flac It is said that if you give an infinite number of cows an infinite number of heavy-duty laptops (with very large keys), that they will ultimately produce all the worlds great palindromes.

小坏孩的专栏 346

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

USACO 1.3-Calf Flac

<br />题目在这里<br />这道题折腾了我好几天!<br />先用搜索写了一个代码,结果搜索写sd了,竟然TLE!<br />只好改写DP。<br />方程:<br />f[i]:=f[i-1]+2(a[i]=a[i-f[i-1]-1] )<br />f[i]:=2(a[i]=a[i-1]) <br />f[i]:=1(else)<br />代码在此:<br />{ ID:asdcyt01 PROB:calfflac LANG:PASCAL } var n,i,len,max,maxi

inspoy的专栏 417

USACO 1.3.3 最长的回文 (Calf Flac)Java实现

据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最 棒的回文. 你的工作就是去这些牛制造的奇观中寻找最长的回文. 寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母 ‘A’-‘Z’和’a’-‘z’. 要你寻找的最长的回文的文章是一个不超过 20,000 个字符的字符串. 我们将保证最长的回文不会超过 2,000 个字符(在除去标点符号、空格之前). 输入格式: 一个不超过 20,000 个字符的文件. 输出格式: 输出的第一行应该包括找

啥也不会的拾肆的博客 404

USACO Section 1.3 PROB Calf Flac(最长回文子串)

题目原文 首先还是贴原文: Calf Flac It is said that if you give an infinite number of cows an infinite number of heavy-duty laptops (with very large keys), that they will ultimately produce all the world's g

keybord_dancer的专栏 849

P1210 最长的回文 Calf Flac【洛谷算法习题】

这篇题解讨论了如何在带标点符号的文本中寻找最长回文子串。摘要如下: 题目要求从包含标点符号的字符串中找出最长的回文子串,忽略非字母字符但保留原始格式输出。解题采用中心扩展法,先预处理提取字母字符并记录位置索引,然后分别检查奇数长度和偶数长度的回文。找到最长回文后,通过索引映射回原字符串位置输出原始格式的结果。算法时间复杂度为O(n²),能高效处理题目给定的数据规模限制(最长回文不超过2000字符)。代码实现包括输入处理、字母提取、回文检测和原始格式输出等关键步骤。

Pretty Boy Fox的博客 508

东华OJ 基础题105 母牛制造的回文——难度中

据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去这些牛制造的奇观(最棒的回文)。在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母’A’-‘Z’和’a’-‘z’。要你寻找的最长的回文的文章是一个不超过20,000个字符的字符串。下一个行或几行应该包括这个回文的原文(没有除去标点符号、空格), 把这个回文输出到一行或多行(如果回文中包括换行符)。输出的第一行应该包括找到的最长的回文的长度。

laole_ye的博客 605

最棒的回文

问题描述 : 据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便作为答案输出),只用考虑字母'A'-'Z'和'a'-'z'。 要你寻找的最长的回文的文章是一个不超过20,000个字符的字符串。我们将保证最长的回文不会超过2,000个字符(在除去标点符号、空格之前)。 输入说明 : 一个不超过20,000个字符的文件。 输出说明 : 输出的第一

Merran_的博客 373

usaco Calf Flac 解题报告

题意: 据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。 在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母'A'-'Z'和'a'-'z'。要你寻找的最长的回文的文章是一个不超过20,000个字符的字符串。我们将保证最长的回文不会超过2,000个字符(...

李世操的空间 214

USACO Section 1.3 : Calf Flac (calfflac)

据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。 在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母'A'-'Z'和'a'-'z'。要你寻找的最长的回文的文章是一个不超过20,000个字符的字符串。 我们将保证最长的回文不会超过2,000个字符(在除去标点符号、空格之前)。

bigsungod的专栏 1186

Usaco Training Section 6.2Calf Flac

Calf Flac 最长的回文 据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最 棒的回文. 你的工作就是去这些牛制造的奇观中寻找最长的回文. 寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母 'A'-'Z'和'a'-'z'. 要你寻找的最长的回文的文章是一个不超过20,000 个字符的字符串. 我们将保证最长的回文不会超...

Monster的博客 399
上一篇: P5410 【模板】扩展 KMP/exKMP(Z 函数)
下一篇: 洛谷 P3805 【模板】manacher
GG_Bond...
博客等级 码龄5年 531粉丝 64原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值