UVA 1610-Party Games(聚会游戏)

UVa 1610 聚会游戏(Party Games) 题意: 输入一个n个字符串的集合D,找一个长度最短的字符串(不一定在D中出现)S, 使得D中恰好一半串小于等于S,另一半串大于S,如果有多解,输出字典序最小的解。 分析: vector 存,排序,取中间的两个,然后把第一个逐渐变大,例如 ABC -> AC -> B 这样,一次次检验和第二个的关系,一旦大于了就停止循环,要注意的是 如果是 AZC 按照算法会变成 A(Z+1) Z + ... 阅读详情

题目链接

题意 给你一N个字符串 要你构造一个字符串D 满足有n/2个字符串比它大 另外半个比它小
分析 给n组字符串排序。然后取中间的两组进行比较。

#include<bits/stdc++.h>
using namespace std;
string a[1006];
int main (void){
    ios::sync_with_stdio(false);
    int n;
    while(cin>>n && n){
        int arr=0;
        for(int i=0;i<n;i++) cin>>a[i];
        sort(a,a+n);
        string b,w=a[n/2],s=a[n/2-1];
        bool f=true;
        while(f){
            for(int i=0;i<26;i++){
                b=s.substr(0,arr);
                b+=i+'A';
                if(b>=s  && b<w){ f=false; break;}
            }
            arr++;
        }
        cout<<b<<endl;
    }
    return 0;
}

总结紫书上说这道题坑很多,刚开始想到的是先比较s,w两个字符串中的相同元素。
后来发现这么做要考虑得情况有点麻烦。于是想出了这么一个耿直的思路hhhh。

第二大脑的觉醒:一个寄生在代码里的小生命,如何悄无声息地接管我的工作流 所有记忆都存在本地。 阅读详情

相关推荐

不只是抓取:用五指灵巧手(ROH-A001/RH56)玩转ROS2下的力控与混合控制

本文深入探讨了在ROS2环境下使用五指灵巧手(ROH-A001/RH56)实现力控与混合控制的实战技巧。从硬件通信协议解析到ROS2节点开发,详细介绍了力感知架构、实时数据处理和混合控制策略,帮助开发者在Ubuntu系统中高效实现精密操作。通过鸡蛋抓取等实例,展示了力控技术在机器人灵巧操作中的关键作用。

weixin_28221501的博客 287

Party Games UVA - 1610 解题报告

题目大意:自己写一个串S,使得题中给出串一半小于等于S,另一半大于S,如果有多解,输出字典序,最小的。 思路:一道十分细节的题目,里面的细节点太多,导致反复的改,反复的WA。 刚开始的思路,就是排序,比较中间两个串,但是比较里面的细节非常多,特比是在处理末尾字符的时候,自己最后是卡死在末尾全是Z串上,虽然卡的时间比较长,但感觉收获比较多,不卡题怎么进步呢。 下面给出AC代码: #incl...

NCC__dapeng的博客 334

vivado时序分析 实例

vivado时序分析实例建立余量保持余量 建立余量 保持余量

Bunny9__的博客 1万+

UVA1610 聚会游戏 Party Games

仔细读题,大于等于而不是大于; 首先对所有字符串排序; 如果在两者最短长度内一直相同,答案就是这一部分; 考虑能不能在第一位不一样的位置j解决,分三种情况:较小串的长度为j+1,较大串与较小串在这一位的差值大于1,较大串的长度>j+1;需保证字典序最小,三种情况应一次讨论; 根据较小串找到最低的能够确定答案的位,注意,如果是最后一位,答案应该是较小串的最后一位; #include <iostream> #include <cstdio> #include <cstri.

gyp0205的博客 212

系统动力学仿真软件Vensim下载

Vensim是由美国Ventana Systems, Inc.所开发,是采用图示化编程的方式构建系统动力学模型,上手简单。Vensim有很多系列产品,其中Vensim PLE (Personal Learning Edition)是面向个人学习者的,完全免费,可直接官网下载,截止于2022/04/10,最新的Vensim PLE版本是9.2.3。

PMIIᶜᶜ的博客 1万+

Zemax实战录——非序列模式下的微透镜阵列仿真与优化

本文详细介绍了在Zemax非序列模式下进行微透镜阵列仿真的完整流程与优化技巧。文章重点阐述了从序列模式切换到非序列模式的必要性,并逐步指导如何搭建光源、阵列与探测器的仿真环境。核心在于通过调整圆锥系数等关键参数优化像差,并增加光线数以提升仿真精度与均匀性,为光学设计提供可靠依据。

weixin_28339967的博客 524

uva 1610 Party Games

这是第八章的第二个习题。这是细节上的问题, 想清楚不太难的。。。 #include #include using namespace std; string haha[1003]; int number; string str,s; char ans[100]; void work(); int main() { /*freopen("1610.in","r",stdin); freop

Lighting_的博客 433

黏菌算法(Slime Mould Algorithm,SMA)

这是一篇关于黏菌算法的总结博客,包含算法思想,算法步骤,求函数最值(Python实现),算法改进等,持续更新ing

weixin_46838605的博客 1万+

Uva - 1610 - Party Games

细节题目,排序之后拿中间的两个比较,比较麻烦,注意每种可能性,调试了好久,WA了好几次。 AC代码: #include #include #include #include #include #include #include #include #include #include #include #include #include #include #inclu

yofer张耀琦的专栏 800

Wezterm的安装和简单配置

希望 wezterm 的主题配色,保持和 powershell 默认配色一致,也就是 Compell 主题。目的是在频繁使用 wezterm 时,原本的根据颜色判断文件信息(尤其是WSL里的Linux下,文件和目录颜色)依然可以使用。wezterm 默认用 cmd.exe, 我是 win11,希望默认用 powershell。

baiyu33的博客 4272

手把手教你学Simulink——基于Simulink的无感FOC(滑模观测器+PLL)实战

摘要: 本文详细介绍了基于Simulink的无感FOC(滑模观测器+PLL)实现方法。主要内容包括:1)SMO+PLL原理,通过滑模观测器估算反电动势,结合PLL抑制抖振;2)系统架构,替代编码器信号;3)Simulink建模流程,涵盖Clarke变换、SMO离散化实现、PLL设计等关键步骤;4)参数整定指南和工程实践要点,如启动策略和故障处理。该方法具有成本低、可靠性高的优势,适用于家电、电动车等场景,仿真结果显示角度误差±5°,速度动态跟随良好。文章还提供了调试建议和常见问题解决方案。

MHD0815的博客 139

Party Games UVA - 1610

仔细分析题意,其实很容易发现,如果将整个序列按照字典序排序之后,最终的结果其实仅仅只与最中间的两个字符串序列是有关的,所以后续的求解就很简单了,取出两个最靠中间的字符串,a和b,逐步取a的子串,然后枚举‘A’ 到‘Z’的字符,将二者拼接,假设拼接之后得到的是temp,如果temp>=a&&temp #include #include #include #include #include #inc

zju2016的博客 366

环境配置与基础教程:当前大厂主流套路:使用 MLflow 全链路管理 YOLO 实验参数、指标与模型版本

YOLO26与MLflow结合实现高效实验管理 YOLO26通过移除DFL模块和实现无NMS端到端推理,在CPU推理速度上提升43%,同时简化了模型导出流程。MLflow 3.10/3.11版本新增多工作区支持、成本追踪和安全序列化等功能,为机器学习实验提供全生命周期管理。两者结合可解决传统"截图+Excel"式实验管理的痛点,实现参数追踪、指标对比和模型版本控制的自动化。 关键优势: YOLO26架构优化带来显著性能提升 MLflow提供实验到生产的全链路管理 原生集成简化了计算机视觉

ZXSXJ的博客 191

[UVa 1610] 聚会游戏(Party Games)

Judge:https://vjudge.net/problem/UVA-1610 题意:输入一些字符串,找一个长度最短的字符串(不一定是输入的字符串),使得输入的字符串中有一半小于等于该字符串,另一半大于该字符串。若有多解,输出字典序最小的解。

StarlitNight的博客 653

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

UVA1610 聚会游戏 Party Games 题解

个人认为一个比较好理解的解法. 思路: 先对所有字符串进行排序. 只需考虑中间那两个串.先预先判断一下两个串的相同部分,让下标k预先到两个串不同的部分. 设第n/2个串为a串,它下一个串为b串 当遇到不同的字符直接跳出循环,如果k到了a串的最后一个字符都还没发现不同的,那么a串本身就满足条件(此处没考虑k是否超出b串的长度,不过最后提交上去也ac了,代码如下 int i=n/2; string ans; ...

qq_34920482的博客 700

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

UVA1610:Party Games(聚会游戏)

作者:xq的acm之路题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4485题目大意:给出n个字符串,求一个字符串,这个字符串比n中的一半的字典序小,大于等于另一半。n为偶数思路:排序,然后一个个字符的比较就行,,,刚开始用if讨论情况,漏了几种

xqacmer 862

VC中sqlite的使用

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

习题 8-2 聚会游戏(Party Games, Mid-Atlantic 2012, UVa1610)

原题链接:https://vjudge.net/problem/UVA-1610 分类:贪心法 备注:注意字母范围 #include<bits/stdc++.h> using namespace std; const int maxn=1005; int n; string s[maxn]; int main(void){ //freopen("in.txt","r",stdin); //freopen("out.txt","w",stdout); while(cin&g

TK_wang_的博客 364

UVA - 1610 Party Games(聚会游戏)(构造)

题意:输入一个n(2<=n<=1000,n是偶数)个字符串的集合D,找一个长度最短的字符串S(不一定在D中出现),使得D中恰好一半串小于等于S,另一半串大于S。如果有多解,输出字典序最小的解。 分析:找到最中间的两个串,直接按位构造。 #pragma comment(linker, "/STACK:102400000, 102400000") #include&lt...

Cherrychan2014的博客 229

[字符串] UVa1610 Party Games 聚会游戏(简单模拟)

题目 给出n个串(n为偶数); 要构造一个串,使n串中有一半小于等于它,另外一半大于它; 要求这个串长度尽量小,同时字典序小; 思路 细节较多使人烦躁的模拟题而已 代码 #include &lt;cstdio&gt; #include &lt;cstdlib&gt; #include &lt;algorithm&gt; #include &lt;string&gt; #inc...

OI - IceCab 357

习题8-2 聚会游戏(Party Games, Mid-Atlantic 2012, UVa1610)

思路: 构造题,挫败感max。orz。。。。 容易想到ans为sort后中间两个字符串a,b之间的串。 由于要求长度以及字典序最小,可以按照这两个来枚举构造。 若某长度无解,则ans加上a串的当前字符。#include #include #include #include #include #include #include #include #include #incl

%%% 330

习题8-2 UVA - 1610 Party Games 聚会游戏 (构造字符串)

大体题意: 给你n 个字符串(n 是偶数),让你构造一个字符串ans,使得n个字符串中有一半字典序小于等于ans  另一半大于ans。 思路: 稍微借鉴了学长的博客 = = ! 感觉写的确实很巧妙! 整体思路就是建立一个空的string  然后暴力一位一位的加字母判断就可以了! 首先: 先给string 数组s进行排序,在取出两个字符串u = s[n/2-1]  v = s[n/2]

aozil_yang的博客 517

UVa:1610 Party Games(字符串处理)

题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=845&page=show_problem&problem=4485 题意:输入一个n(2 ≤n≤1000,n是偶数)个字符串的集合D,找一个长度最短的字符串(不一定在D中出现)S,使得D中恰好一半串小于等于S,另一半串大于

nullptr 620

Uva 1610 - Party Games(模拟)

 You’ve been invited to a party. The hostwants to divide the guests into 2 teams for party games, with exactly the samenumber of guests on each team. She wants to be able to tell which guest is onwhic...

Change the world by program. 362

UVa 1610 - Party Games(细节处理)

输入一个含有偶数个串的集合,求一个字符串s0,使集合中一半的串大于s0,另一半小于等于s0,多解输出字典序最小的解。只需将s与中间两个串比较即可。 新串s0从空串开始,每次循环加上一个s1中对应位置的字符。只要满足条件就跳出循环,输出。

wcr1996的专栏 2581
上一篇: uva 11572 Unique Snowflakes (唯一的雪花)
下一篇: 标准C++中的string类的用法总结[转载]
NANAN-
博客等级 码龄9年 12粉丝 21原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值