wordpress文章首页显示/宁波优化网站哪家好

wordpress文章首页显示,宁波优化网站哪家好,产品推广宣传语,网站建设收费标准公司第十四次CCF-CSP认证 卖菜满分思路 买菜满分思路 再卖菜满分题解(差分约束)solution 1(枚举 correct but 超时)solution 2(正解) 卖菜 题目链接 满分思路 就是模拟一下这个调整第二天菜价的过程,其中对于两种只有一个邻居的情况下做出调整&…

第十四次CCF-CSP认证

  • 卖菜
    • 满分思路
  • 买菜
    • 满分思路
  • 再卖菜
    • 满分题解(差分约束)
      • solution 1(枚举 correct but 超时)
      • solution 2(正解)

卖菜

在这里插入图片描述

题目链接

满分思路

就是模拟一下这个调整第二天菜价的过程,其中对于两种只有一个邻居的情况下做出调整,三个for循环分别处理
输入,调整,输出

#include <bits/stdc++.h>
using namespace std;
const int N=1010;
int yes[N],today[N];
int main()
{int n;cin>>n;for(int i=1;i<=n;i++){cin>>yes[i];}for(int i=1;i<=n;i++){if(i==1){today[i]=(yes[i]+yes[i+1])/2;}else if(i==n){today[n]=(yes[n-1]+yes[n])/2;}else{today[i]=(yes[i-1]+yes[i]+yes[i+1])/3;}}for(int i=1;i<=n;i++){cout<<today[i]<<" ";}
}

买菜

在这里插入图片描述
题目链接

满分思路

这题说白了就是两个人都去买菜去了,然后回来把菜装车的时候俩人会聊会天,这样一来一回,问的是 两个人在这个买菜的过程中能聊多久,其实题目已经给出提示了,对于时间段用区间来表示,那么我们是不是只需要找到两个人时间重合的部分就好,对于这个重合部分怎么表示呢
画个图其实就很明了了,这里截一下Y总课上的图示
即:两个区间右端点取一个两者最小值(min)减去左端点取一个最大值

在这里插入图片描述

#include <bits/stdc++.h>
using namespace std;
#define x first
#define y second
typedef pair<int,int> PII;
const int N=2010;
int n;
PII p[N],q[N];
int get(PII a,PII b)
{if(a.y<b.x ||b.y<a.x){return 0;}else{return min(a.y,b.y)-max(a.x,b.x);//对于线段的重合部分取(右端点最小-左端点最大)}
}
int main()
{cin>>n;for(int i=0;i<n;i++){cin>>p[i].x>>p[i].y;}for(int i=0;i<n;i++){cin>>q[i].x>>q[i].y;}int res=0;for(int i=0;i<n;i++){for(int j=0;j<n;j++){res+=get(p[i],q[j]);}}cout<<res<<endl;return 0;
}

再卖菜

第三题是个大模拟 非常麻烦 先跳过了 满分比较艰难
这三题名字?? 我还以为我题目看错了 这出题人???
在这里插入图片描述
题目链接

满分题解(差分约束)

其实这题你仔细看一下,是不是就是第一道题的逆过程,但是往往逆过程是比较难的,这题就是,
知道今天的菜价,问你的是昨天菜价多少,这个其实就需要我们自己找约束条件了,虽然调整的规则一样
但往往你并不能通过这家或几家今天的菜价就能知道这家昨天的菜价,而且这对于所有店都是这样,这其实就是难点所在 等我学完 差分约束 回来补上个人心得

solution 1(枚举 correct but 超时)

#include <iostream>
#include <vector>using namespace std;// 检查当前枚举的第一天菜价序列是否符合第二天菜价的要求
bool check(const vector<int>& day1Prices, const vector<int>& day2Prices) {int n = day1Prices.size();// 检查第一个商店if ((day1Prices[0] + day1Prices[1]) / 2 != day2Prices[0]) {return false;}// 检查中间的商店for (int i = 1; i < n - 1; ++i) {if ((day1Prices[i - 1] + day1Prices[i] + day1Prices[i + 1]) / 3 != day2Prices[i]) {return false;}}// 检查最后一个商店if ((day1Prices[n - 2] + day1Prices[n - 1]) / 2 != day2Prices[n - 1]) {return false;}return true;
}// 枚举并找到符合要求的第一天菜价
vector<int> findDay1Prices(const vector<int>& day2Prices) {int n = day2Prices.size();vector<int> day1Prices(n);// 枚举第一个商店的菜价,从 1 开始for (int firstPrice = 1; ; ++firstPrice) {day1Prices[0] = firstPrice;bool valid = true;// 推导后续商店的菜价for (int i = 1; i < n; ++i) {if (i == 1) {// 第二个商店的菜价根据第一个商店和自身推导day1Prices[i] = 3 * day2Prices[i - 1] - day1Prices[i - 1];if (day1Prices[i] <= 0) {valid = false;break;}} else if (i == n - 1) {// 最后一个商店的菜价根据前一个商店和自身推导day1Prices[i] = 2 * day2Prices[i] - day1Prices[i - 1];if (day1Prices[i] <= 0) {valid = false;break;}} else {// 中间商店的菜价根据相邻商店推导day1Prices[i] = 3 * day2Prices[i] - day1Prices[i - 1] - day1Prices[i - 2];if (day1Prices[i] <= 0) {valid = false;break;}}}if (valid && check(day1Prices, day2Prices)) {return day1Prices;}}return {};
}int main() {int n;cin >> n;vector<int> day2Prices(n);for (int i = 0; i < n; ++i) {cin >> day2Prices[i];}vector<int> day1Prices = findDay1Prices(day2Prices);for (int i = 0; i < n; ++i) {if (i > 0) {cout << " ";}cout << day1Prices[i];}cout << endl;return 0;
}

solution 2(正解)

作者:Tilbur
代码解析

#include <iostream>
#include <cstring>
#include <algorithm>using namespace std;const int N = 310,M=1e5+10;
int h[N], e[M], w[M], ne[M], idx;
int q[N], dist[N];
bool st[N];
int b[N];
int n;void add(int a, int b, int c)  // 添加一条边a->b,边权为c
{e[idx] = b, w[idx] = c, ne[idx] = h[a], h[a] = idx ++ ;
}void spfa()  // 求1号点到n号点的最短路距离
{int hh = 0, tt = 0;memset(dist, -0x3f, sizeof dist);dist[0] = 0;q[tt ++ ] = 0;while (hh != tt){int t = q[hh ++ ];if (hh == N) hh = 0;st[t] = false;for (int i = h[t]; i != -1; i = ne[i]){int j = e[i];if (dist[j] <dist[t] + w[i]){dist[j] = dist[t] + w[i];if (!st[j])     // 如果队列中已存在j,则不需要将j重复插入{q[tt ++ ] = j;if (tt == N) tt = 0;st[j] = true;}}}}
}int main()
{scanf("%d", &n);for (int i = 1; i <= n; i ++ ) scanf("%d",&b[i]);memset(h, -1, sizeof h);for(int i=2;i<n;i++){add(i-2,i+1,3*b[i]);add(i+1,i-2,-3*b[i]-2);}add(0,2,2*b[1]),add(2,0,-2*b[1]-1);add(n-2,n,2*b[n]),add(n,n-2,-2*b[n]-1);for(int i=1;i<=n;i++) add(i-1,i,1);spfa();for(int i=1;i<=n;i++) cout<<dist[i]-dist[i-1]<<' ';return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/898573.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CCBCISCN复盘

AWDP – ccfrum 自己搭了一下环境, 复现一下这道题目, 之前比赛的时候完全没想到这个漏洞要怎么打, 修也不知道要怎么修, 就仅仅是对用户名的账号和密码进行了一下过滤, 完全没起到作用, 唉, 实在太菜 如果想要尝试复现的话可以尝试拉取这个镜像, 我打完之后就直接把这个容器给…

VS010生成可由MATLAB2016调用的DLL文件方法

亲测实用&#xff0c;不用配置杂七杂八的依赖项 1&#xff1a;新建Win32的DLL输出项目 2&#xff1a;修改为release模式 3&#xff1a;添加calc.cpp文件&#xff0c;即要导出的函数myadd&#xff1a; #include "calc.h" __declspec(dllexport) int myadd(int a,in…

优选算法系列(3.二分查找 )

目录 一.二分查找&#xff08;easy&#xff09; 题目链接&#xff1a;704. 二分查找 - 力扣&#xff08;LeetCode&#xff09; 解法&#xff1a; 代码&#xff1a; 二.在排序数组中查找元素的第⼀个和最后⼀个位置&#xff08;medium&#xff09; 题目链接&#xff1a;34.…

阿里云服务器部署 五 Nginx + springboot

Nginx的部分配置 1. 基础容灾配置&#xff08;被动健康检查&#xff09; 在 upstream 块中&#xff0c;通过 max_fails 和 fail_timeout 参数定义故障转移规则&#xff1a; 在 upstream 块中&#xff0c;通过 max_fails 和 fail_timeout 参数定义故障转移规则&#xff1a;…

接口自动化测试框架详解

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 接口自动化测试是指通过编写程序来模拟用户的行为&#xff0c;对接口进行自动化测试。Python是一种流行的编程语言&#xff0c;它在接口自动化测试中得到了广泛…

C# 项目06-计算程序运行时间

实现需求 记录程序运行时间&#xff0c;当程序退出后&#xff0c;保存程序运行时间&#xff0c;等下次程序再次启动时&#xff0c;继续记录运行时间 运行环境 Visual Studio 2022 知识点 TimeSpan 表示时间间隔。两个日期之间的差异的 TimeSpan 对象 TimeSpan P_TimeSpa…

网络华为HCIA+HCIP NFV

目录 NFV关键技术&#xff1a;虚拟化 NFV关键技术&#xff1a;云化 NFV架构 NFV标准架构 ​编辑 NFV架构功能模块 NFV架构接口 NFV关键技术&#xff1a;虚拟化 在NFV的道路上&#xff0c;虚拟化是基础&#xff0c;云化是关键。传统电信网络中&#xff0c;各个网元都是…

SpringBoot实现异步调用的方法

在Java中使用Spring Boot实现异步请求和异步调用是一个常见的需求&#xff0c;可以提高应用程序的性能和响应能力。以下是实现这两种异步操作的基本方法&#xff1a; 一、异步请求&#xff08;Asynchronous Request&#xff09; 异步请求允许客户端发送请求后立即返回&#x…

使用vite新建vue3项目 以及elementui的使用 vite组件问题

项目创建 在创建项目之前我们应该在终端中输入 node -v 和 npm -v 只有它们都能正常查看版本号才说明我们之前是已经安装完成的。 接下来我们在合适的目录下输入npm create vitelatest 它会要求你输入项目的名称&#xff0c;这个名称和我们之前通过cil创建的命名规则一样。…

音频录制小妙招-自制工具-借助浏览器录一段单声道16000采样率wav格式音频

先看效果 1、打开页面 2、点击开始录音&#xff0c;弹出权限提示&#xff0c;点击“仅这次访问时允许” 3、录完后&#xff0c;点击停止 4、文件自动下载到默认目录 上代码 js 部分 document.addEventListener(DOMContentLoaded, () > {const startBtn document.getEleme…

数学建模 绘图 图表 可视化(3)

文章目录 前言二维散点图系列坐标图数据分布特征&#xff0c;Q-Q、P-P图分类图一般的曲线图峰峦图总结参考资料 前言 承接上期 数学建模 绘图 图表 可视化&#xff08;1&#xff09;的总体描述&#xff0c;这期我们继续跟随《Python 数据可视化之美 专业图表绘制指南》步伐来学…

【数据结构】栈(Stack)、队列(Queue)、双端队列(Deque) —— 有码有图有真相

目录 栈和队列 1. 栈&#xff08;Stack&#xff09; 1.1 概念 1.2 栈的使用&#xff08;原始方法&#xff09; 1.3 栈的模拟实现 【小结】 2. 栈的应用场景 1、改变元素的序列 2、将递归转化为循环 3、逆波兰表达式求值 4、括号匹配 5、出栈入栈次序匹配 6、最小栈…

【强化学习】Reward Model(奖励模型)详细介绍

&#x1f4e2;本篇文章是博主强化学习&#xff08;RL&#xff09;领域学习时&#xff0c;用于个人学习、研究或者欣赏使用&#xff0c;并基于博主对相关等领域的一些理解而记录的学习摘录和笔记&#xff0c;若有不当和侵权之处&#xff0c;指出后将会立即改正&#xff0c;还望谅…

国家雪亮工程政策护航,互联网监控管理平台铸就安全防线

在当今社会&#xff0c;公共安全是国家发展的重要基石&#xff0c;也是人民安居乐业的基本保障。为了打造更高水平的平安中国&#xff0c;国家推出了意义深远的雪亮工程&#xff0c;并出台了一系列相关政策&#xff0c;为公共安全事业保驾护航。而互联网监控管理平台作为雪亮工…

蓝桥杯 第十天 2019国赛第4题 矩阵计数

最后一个用例超时了&#xff0c;还是记录一下 import java.util.Scanner;public class Main {static int visited[][];static int count 0;static int n,m;public static void main(String[]args) {Scanner scan new Scanner(System.in);n scan.nextInt();//2m scan.nextIn…

coding ability 展开第五幕(二分查找算法)超详细!!!!

. . 文章目录 前言二分查找搜索插入的位置思路 x的平方根思路 山脉数组的峰顶索引思路 寻找旋转排序数组中的最小值思路 总结 前言 本专栏上篇博客已经把滑动指针收尾啦 现在还是想到核心——一段连续的区间&#xff0c;有时候加上哈希表用起来很爽 今天我们来学习新的算法知识…

基于springboot的母婴商城系统(018)

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本母婴商城系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…

shell 脚本搭建apache

#!/bin/bash # Set Apache version to install ## author: yuan# 检查外网连接 echo "检查外网连接..." ping www.baidu.com -c 3 > /dev/null 2>&1 if [ $? -eq 0 ]; thenecho "外网通讯良好&#xff01;" elseecho "网络连接失败&#x…

使用OBS进行webRTC推流参考

参考腾讯云官方文档&#xff1a; 云直播 OBS WebRTC 推流_腾讯云 说明非常详细&#xff0c;分为通过WHIP和OBS插件的形式进行推流。 注意&#xff1a;通过OBS插件的形式进行推流需要使用较低的版本&#xff0c;文档里有说明&#xff0c;需要仔细阅读。

Excel 小黑第18套

对应大猫18 .txt 文本文件&#xff0c;点数据 -现有链接 -浏览更多 &#xff08;文件类型&#xff1a;可以点开文件看是什么分隔的&#xff09; 双击修改工作表名称 为表格添加序号&#xff1a;在数字那修改格式为文本&#xff0c;输入第一个序号样式&#xff08;如001&#…