Cpp环境【NOIP2008普及组】【Vijos1769】 排座椅

Cpp环境【OpenJudge3344】【Vijos2874】冷血格斗场 【问题描述】   为了迎接08年的奥运会,让大家更加了解各种格斗运动,facer新开了一家冷血格斗场。格斗场实行会员制,但是新来的会员不需要交入会费,而只要同一名老会员打一场表演赛,证明自己的实力。  我们假设格斗的实力可以用一个正整数表示,成为实力值,两人的实力值可以相同。另外,每个人都有一个唯一的id,也是一个正整数。为了使得比赛更好看,每一个新队员都会选择与他实力最为接近的人比赛,即比赛双 阅读详情
【问题描述】  

  上课的时候总有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情。不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同学上课时会交头接耳。同学们在教室中坐成了M行N列,坐在第i行第j列的同学的位置是(i,j),为了方便同学们进出,在教室中设置了K条横向的通道,L条纵向的通道。于是,聪明的小雪想到了一个办法,或许可以减少上课时学生交头接耳的问题:她打算重新摆放桌椅,改变同学们桌椅间通道的位置,因为如果一条通道隔开了两个会交头接耳的同学,那么他们就不会交头接耳了。
  请你帮忙给小雪编写一个程序,给出最好的通道划分方案。在该方案下,上课时交头接耳的学生对数最少。

【输入格式】  

  第一行,有5各用空格隔开的整数,分别是M,N,K,L,D(2<=N,M<=1000,K不大于M,L不大于N,D<=2000)。
  下来D行,每行有4个用空格隔开的整数,第i行的4个整数Xi,Yi,Pi,Qi,表示坐在位置(Xi,Yi)与(Pi,Qi)的两个同学会交头接耳(输入保证他们前后相邻或者左右相邻)。
  输入数据保证最优方案的唯一性。

【输出格式】  

  第一行包含K个整数,a[1] a[2] … a[K],表示第a[1]行和a[1+1]行之间、第a[2]行和第a[2+1]行之间、…、第a[K]行和第a[K+1]行之间要开辟通道,其中a[i]< a[i+1],每两个整数之间用空格隔开(行尾没有空格)。
  第二行包含L个整数,b[1] b[2] … b[k],表示第b[1]列和b[1+1]列之间、第b[2]列和第b[2+1]列之间、…、第b[L]列和第b[L+1]列之间要开辟通道,其中b[i]< b[i+1],每两个整数之间用空格隔开(行尾没有空格)。

【输入样例】  

4 5 1 2 3
4 2 4 3
2 3 3 3
2 5 2 4

【输出样例】  

2
2 4

【样例解释】  

    这里写图片描述 
  上图中用符号*、※、+ 标出了3对会交头接耳的学生的位置,图中3条粗线的位置表示通道,图示的通道划分方案是唯一的最佳方案。

    【思路梳理】

  我们模拟考试时遇见的一道水题,但得分基本都只有10分(只通过了样例),自己调试之后脸都青了,都是输出后没有排序!
  水题,贪心策略非常简单:考虑全局,如果在某一列或者某一行添加过道能够隔开越多的问题学生,那添加这一条过道的优先级就应该越高,越应该优先考虑在这两行(列)之间设置过道,细节见笔者以下的代码。按照O(MN)的复杂度贪心可以过

【Cpp代码】
#include<cstdio>
#include<iostream>
#include<algorithm>
#define maxn 1005
using namespace std;
int m,n,k,l,d;
struct data
{
    int id,num;
}x[maxn],y[maxn];//数据范围非常小,直接用数组就可以解决
int ansx[maxn],ansy[maxn];//放置排序后等待输出的答案!!!

bool cmp(data a,data b) 
{
    return a.num==b.num? a.id<b.id: a.num>b.num;
    //比较两行(列)的优先级是否相同,如果是优先隔开字典序较小的行(列)
}

void output()
{
    for(int i=1;i<=k;i++)   ansx[i]=x[i].id;//只设置k行,循环k次取走前面k个优先级最高的
    for(int i=1;i<=l;i++)   ansy[i]=y[i].id;//同上
    sort(ansx+1,ansx+1+k);
    sort(ansy+1,ansy+1+l);//排序啊!!!!
//再提供一种思路,不需要ansx和ansy数组,直接sort(x+1,x+1+k,cmp)就可以,
//比较函数按照编号的字典序来,由低到高排序
    bool first=true;//行尾严格保证无空格,所以除了首元素,所有其他元素输出时前面都应该有一个空格
    for(int i=1;i<=k;i++)
    {
        if(first)   printf("%d",ansx[i]),first=false;
        else printf(" %d",ansx[i]);
    }
    printf("\n");
    first=true;
    for(int i=1;i<=l;i++)
    {
        if(first)   printf("%d",ansy[i]),first=false;
        else printf(" %d",ansy[i]);
    }
}

int main()
{
//  freopen("in.txt","r",stdin);
//  freopen("seat.out","w",stdout);
    scanf("%d%d%d%d%d",&m,&n,&k,&l,&d);

    for(int i=1;i<=m;i++)   x[i].id=i;
    for(int i=1;i<=n;i++)   y[i].id=i;

    for(int i=1;i<=d;i++)
    {
        int x1,x2,y1,y2;
        scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
        if(x1==x2)  y[min(y1,y2)].num++;//两人位于同一行,纵向隔开 
        else if(y1==y2) x[min(x1,x2)].num++;//两人位于同一列,横向隔开 
    }
    sort(y+1,y+1+n,cmp);
    sort(x+1,x+1+m,cmp);
    output();
    return 0;
}
Cpp环境【Vijos1947】离散化的区间覆盖问题——强有力的感染法 【问题描述】   X轴上方有若干条平行于X轴的线段,求这些线段能够覆盖到的X轴的总长度,如下图:               【输入格式】   第一行一个数n(n<=100000),表示线段个数;   接下来的n行,每行两个整数a,b(-10^9<=a,b<=10^9),代表一条线段的端点。【输出格式】   输出覆盖X轴的长度。【输入样例】 7 20 23 1 5 13 1 阅读详情

相关推荐

Cpp环境【Uva10815】【Vijos2785】安迪的第一本字典

【问题描述】   输入一段文本,找出所有不同的单词(连续的字母序列),按字典序从小到大输出。输入的单词不区分大小写,且保证至少包含有一个单词。【输入格式】   一段不超过500行的文本,每行包含的字符个数不超过1000个字符。【输出格式】   需要输出输入文本中不同的单词,每个单词占一行,单词的所有字母都是小写字母,按字典序排列。【输入样例】 Adventures in Disney

天地皆逆旅,你我本行人。 881

NOIP2008 普及组 复赛 seat 排座椅

NOIP2008 普及组 复赛 seat 排座位

mrcrack的博客 1483

Cpp环境【Uva1160】【Vijos2806】易爆物

【问题描述】   有一些简单化合物,每个化合物都由两种元素组成(每个元素用一个数字表示)。你是一个装箱工人,从实验员那里按照顺序依次把一些简单化合物装到车上。但这里存在一个安全隐患:如果车上存在k个简单化合物,正好包含k中元素,那么他们将组成一个易爆的混合物。为了安全起见,每当你拿到一个化合物时,如果它和已装车的化合物形成易爆混合物,你就应当拒绝装车。编程输出有多少个没有装车的化合物。【输入格式

天地皆逆旅,你我本行人。 762

【NOIP2008普及组】排座椅

上课的时候总有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情。不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同学上课时会交头接耳。同学们在教室中坐成了M行N列,坐在第i行第j列的同学的位置是(i,j),为了方便同学们进出,在教室中设置了K条横向的通道,L条纵向的通道。于是,聪明的

cqyz_yuyuko的博客 2151

YOLO26算法水面与液体识别+训练好的模型+393张数据集+pyqt可视化界面.zip

附训练好的 YOLO 权重与 PyQt 可视化检测界面,页面底部含可视化效果预览,毕设/课设开箱即用。 【数据集概况】 · 检测类别(中文):[未获取()] 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 52 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.8528** mAP50-95 | 0.3441 Precision | 0.7729 Recall | 0.8354 train/box_loss | 1.5367 train/cls_loss | 1.0228 val/box_loss | 1.6809 val/cls_loss | 1.1758 【训练过程分析】 我这次训练了52个周期,模型在训练初期确实收敛速度很快,前20个周期mAP50从0.74逐步提升至0.82,这说明模型开始适应数据集,学习到一些关键特征。但到第30个周期后,提升速度逐渐放缓,到了40个周期时,mAP50达到0.85,这个阶段的曲线走势有些像磨砂玻璃,平滑且不规则,后期更是趋于平缓,表明模型可能已经达到最优解,再继续训练可能会有少量提升但代价较大。整体而言,从loss曲线来看,训练集的box_loss和cls_loss在52个周期内分别从1.80和1.25降到1.54和1.02,下降曲线较为稳定,但到了后期,这两项指标下降幅度逐渐减缓,尤其cls_loss下降至1.10左右后趋于稳定,这可能是模型对训练数据已有了较强的泛化能力,但也提示我们分类的稳定性可能还欠些火候。 至于验证集的表现,box_lo... 使用场景:毕业设计、课程设计、深度学习入门、工业场景落地验证。

LLC谐振变换器恒压恒流双竞争闭环控制simulink仿真(附说明文档)

内容概要:本资源是一套面向电力电子与智能控制领域的综合性科研仿真资料合集,核心聚焦于LLC谐振变换器的恒压恒流双竞争闭环控制策略设计与Simulink建模仿真实现,涵盖半桥LLC、双向全桥LLC等拓扑结构的调频闭环仿真,并提供详尽的说明文档与PPT辅助材料。资源体系不仅深入呈现LLC变换器的动态响应与控制逻辑,还扩展至双有源桥(DAB)变换器的软开关协同优化、最小应力控制、EPS调制策略及新扩展移相角优化等前沿技术,同时集成三相PWM整流器在电网不平衡条件下的功率平衡控制、VOC+SVPWM双闭环控制等典型应用场景。此外,资源包涵盖状态估计(如EKF、UKF、PF)、微电网经济调度、卡尔曼滤波融合、神经网络控制、PID优化、储能系统管理等多个交叉方向,特别强调对顶级EI期刊研究成果的高精度复现,旨在帮助科研人员快速掌握先进控制算法的核心思想与仿真实现方法。; 适合人群:电气工程、自动化、电力电子、新能源科学与工程等相关专业的硕士博士研究生、高校科研人员,以及从事新能源变换器、智能电网、电动汽车、微电网系统研发的工程技术人员。; 使用场景及目标:① 深入理解LLC与DAB变换器的闭环控制机理,掌握恒压恒流切换、软开关实现与损耗优化方法;② 利用Simulink平台构建复杂电力电子系统模型,开展动态性能分析与控制器参数整定;③ 复现高水平期刊论文中的先进控制策略,提升科研创新能力与论文发表竞争力;④ 支持毕业设计、科研课题、项目申报及工程原型开发中的仿真验证环节。; 阅读建议:建议结合提供的完整资源目录循序渐进学习,优先研读标注“顶级EI复现”的案例以获取权威方法参考,配合MATLAB/Simulink动手搭建模型,重点关注控制框图设计、调制逻辑实现与仿真结果对比,深入理解算法背后的物理意义与数学推导过程。

[NOIP2008]排座椅

// Problem: [NOIP2008]排座椅 // Contest: NowCoder // URL: https://ac.nowcoder.com/acm/contest/20960/1044 // Memory Limit: 102400 MB // Time Limit: 2000 ms // 2022-03-03 19:53:02 // // Powered by CP Editor (https://cpeditor.org) #include<bits/stdc++.h>

qq_28409093的博客 309

AD620仪表放大器模块实战:从双电源切换到单电源供电的完整指南(附原理图)

本文深入探讨了AD620仪表放大器模块从双电源切换到单电源供电的常见陷阱与正确方案。通过解析AD620的内部架构与电气特性,指出其“天生”依赖双电源,简单的跳线改装会导致芯片损坏或失效。文章提供了基于AD623芯片的真正单电源替代方案,并附有原理图与实战波形对比,为便携式设备设计提供了完整指南。

weixin_29231027的博客 365

Cpp环境【POJ2435】【CQYZOJ3034】【USACO2005 U S Open Silver】Navigating the City城市交通

Description 【问题描述】   A dip in the milk market has forced the cows to move to the city. The only employment available is in the venerable field of taxi-driving. Help the cows learn their way around

天地皆逆旅,你我本行人。 1157

Sigrity IBIS建模实战:如何用T2B工具快速转换SPICE模型(附避坑指南)

本文详细介绍了如何使用Sigrity T2B工具将SPICE模型高效转换为IBIS模型,涵盖从环境配置、模型预处理到转换流程和验证策略的全过程。通过实战案例和避坑指南,帮助硬件工程师掌握高速电路设计中的IBIS建模技术,提升信号完整性分析效率。

weixin_29243279的博客 393

ThingsBoard 仪表板状态

请先通过阅读仪表板概述和仪表板入门案例来熟悉ThingsBoard的仪表板。文章希望通过浅显的文字描述什么是仪表板状态及如何使用。 概念 状态功能使得仪表板可以分层,配合小部件的动作,实现多层仪表板之间的跳转.每个状态对应一个仪表板的图层 每个仪表板有一个默认的根状态, 根状态可以理解为默认状态, 也就是打开仪表板默认展示的仪表板图层.编辑模式下, 点击右上角的图标来管理状态.添加多个状态后左上角出现状态切换(图层切换)下拉列表可以通过选中根状态复选框切换新的默认展示的状态/图层配合小部件的动作,实现状

物联网三分钟 2308

Cpp环境【Uva815】【Vijos2776】洪水 Flood

【问题描述】   有一个n行m列的网格,每个格子是边长为10米的正方形,网格四周是无限高的墙壁,第i行第j列每个格子的海拔高度为h[i][j]。现在网格中有T立方米的水,请你计算网格中的水平面的海拔高度,以及有水格子数目。注意,在网格中,所有有水格子的水平面的海拔高度相同,所以有水格子的数量为海拔高度严格小于水平面高度的格子数目。【输入格式】   第一行整数n和m,表示网格有n行m列。

天地皆逆旅,你我本行人。 903

高通camx架构学习(零)—— 深入理解Camera 硬件抽象层

从上面的定义可以看出,主要是通过hw_module_t 代表了模块,通过其open方法用来打开一个设备,而该设备是用hw_device_t来表示,其中除了用来关闭设备的close方法外,并无其它方法,由此可见谷歌定义的HAL接口,并不能满足绝大部分HAL模块的需要,所以谷歌想出了一个比较好的解决方式,那便是将这两个基本结构嵌入到更大的结构体内部,同时在更大的结构内部定义了各自模块特有的方法,用于实现模块的功能,这样,一来对上保持了HAL的统一规范,二来也扩展了模块的功能。

图像学习之旅 1668

Cpp环境【POJ3622】【Vijos2990】【Usaco2007】挑剔的美食家

Description 【问题描述】 Like so many others, the cows have developed very haughty tastes and will no longer graze on just any grass. Instead, Farmer John must purchase gourmet organic grass at the Green Gr

天地皆逆旅,你我本行人。 886

第 1 章 Prometheus 监控 | Prometheus 入门

了解 Prometheus 监控系统,学会安装及了解页面功能。

甘蓝的专栏 486

错误代码:11300001 数据集 [xxx] 配置错误“=”附近有语法错误(原理分析)

错误代码:11300001 数据集 [1_Workshift] 配置错误“=”附近有语法错误。

码农研究僧的博客 915

Cpp环境【GRYZ2015】【Vijos3150】 足球联赛

【问题描述】   XX中学新一季的足球联赛开幕了。足球联赛有 n只球队参赛,每赛季,每只球队要与其他球队各赛两场,主客各一场,赢一场得 3 分,输一场不得分,平局两只队伍各得一分。   英勇无畏的小鸿是机房的主力前锋,她总能在关键时刻踢出一些匪夷所思的妙球。但是很可惜,她过早的燃烧完了她的职业生涯,不过作为一个能够 Burning 的 girl,她的能力不止如此,她还能预测这个赛季所有

天地皆逆旅,你我本行人。 826

ubuntu-25.04-desktop-amd64 工具VMware-tools 正确安装方法

摘要:Ubuntu 25.04虚拟机安装VMware Tools后无法实现主机与虚拟机间的文件复制粘贴和拖拽功能,问题可能源于工具兼容性。建议优先安装open-vm-tools套件(含open-vm-tools-desktop),而非官方VMware Tools。具体方案:通过终端执行安装命令后重启系统。该方法已实测有效解决该兼容性问题。(149字)

安徽锐锋科技-沐雨潇竹 672

Cpp环境【NOIP2011普及组】【Vijos1787】 瑞士轮

【问题描述】   在双人对决的竞技性比赛,如万智牌比赛(万智大法好)中,最常见的赛制是淘汰赛和循环赛。前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高。后者的特点是较为公平,偶然性较低,但比赛过程往往十分冗长。   本题中介绍的瑞士轮赛制,因最早使用于 1895 年在瑞士举办的国际象棋比赛而得名。它可以看作是淘汰赛与循环赛的折衷,既保证了比赛的稳定性,又能使赛程不至于过长。   2*

天地皆逆旅,你我本行人。 816

损失函数大汇总(四十五)(clDice Loss附公式推导与代码)

clDice Loss是一种针对细长结构分割任务的拓扑保持损失函数,通过比较预测区域和真实区域的中心线重叠情况来评估分割质量。与传统Dice Loss关注区域重叠不同,clDice Loss重点考察连通性和骨架拓扑结构,能有效避免血管断裂、分支错误连接等问题。该损失函数包含两个核心指标:预测骨架在真实区域中的覆盖比例(Topology Precision)和真实骨架被预测区域覆盖的比例(Topology Sensitivity),通过调和平均得到最终评估值。由于传统骨架提取算法不可导,实际实现采用可微的so

悦学共鸣,温柔以待,汇聚光芒,共同成长 450

IMSL CNL 7.0.0 (x86-64)Crack

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

Cpp环境【POJ3258】【Usaco2006】【Vijos1329】River Hopscotch跳石游戏

Description 问题描述 Every year the cows hold an event featuring a peculiar version of hopscotch that involves carefully jumping from rock to rock in a river. The excitement takes place on a long, straigh

天地皆逆旅,你我本行人。 754

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Cpp环境 【poj 2940 】【Uva11054】【Vijos2909】Wine Trading in Gergovia 格尔高维亚的肮脏红酒交易

【问题描述】   直线上有n个等距离的村庄,每个村庄要么买酒,要么卖酒。设第i个村庄对酒的供给量为a[i],(显然a[i]>0表示该村庄供过于求,应该卖酒)。所有村庄供需平衡,即所有a[i]之和等于0。  把k个单位的酒从一个村庄运到另一个村庄需要k个单位的劳动力。计算最少需要多少劳动力可以满足所有村庄的需求。输出保证在64位带符号整数的范围内。【输入格式】   第一行一个整数n,表示村庄的

天地皆逆旅,你我本行人。 710

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Cpp环境【OnlineJudge2704】【CQYZOJ3188】寻找极大点

【问题描述】   在一个平面上,如果有两个点(x,y),(a,b),如果说(x,y)支配了(a,b),这是指x>=a,y>=b;用图形来看就是(a,b)坐落在以(x,y)为右上角的一个无限的区域内。   给定n个点的集合,一定存在若干个点,它们不会被集合中的任何一点所支配,这些点叫做极大点。请编程找出所有的极大点,按照x坐标由小到大,输出极大点的坐标。    【输入格式】   输入包

天地皆逆旅,你我本行人。 708

Cpp环境【Uva11572】【Vijos2788】唯一的雪花(并没有雪花=_=)

【问题描述】   输入一个长度为n(n<=10^6)的序列A,找一个尽量长的连续子序列A[L]..A[R],使得序列中没有相同的元素。【输入格式】   第一行一个整数n,表示序列A长度,接下来的N行,按顺序给出序列A[1]..A[n],每行一个整数数,表示序列的元素。【输出格式】   没有重复元素的连续序列最长长度。【输入样例】 5 1 2 3 2 1【输出样例】 3【

天地皆逆旅,你我本行人。 699

Cpp环境【Usaco2.1.3】【Vijos1222】顺序排分数

【问题描述】   输入自然数N,对于一个最简分数 a/b(分子和分母互质的分数),满足1 <= b <= N,0 <= a/b <= 1,请找出所有满足条件的分数。  这有一个例子,当N=5时,所有解为:   0/1 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1/1   给定一个自然数N,1<=n<=160,请编程按分数值递增的顺序输出所有解。  提示:   ①、

天地皆逆旅,你我本行人。 682

Cpp环境【NOIP2013提高组】摆火柴

【问题描述】   涵涵有两盒火柴,每盒装有n根火柴,每根火柴都有一个高度。现在将每盒中的火柴各自排 成一列,同一列火柴的高度互不相同,两列火柴之间的距离定义为:,其中 ai表示第 一列火柴中第i个火柴的高度,bi表示第二列火柴中第i个火柴的高度。   每列火柴中相邻两根火柴的位置都可以交换,请你通过交换使得两列火柴之间的距离最小。请问 得到这个最小的距离,最少需要交换多少次?如果这个数字太大

天地皆逆旅,你我本行人。 675
上一篇: Cpp环境【Uva1615】【Vijos2867】 freeway 高速公路
下一篇: Cpp环境【NOIP2011普及组】【Vijos1787】 瑞士轮
cqyz_Lebmond
博客等级 码龄10年 18粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值