ccf再卖菜】的更多相关文章

201809-4 再卖菜 我使用的是爆搜解决,只得了60分. 记忆化搜索 差分约束 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<string> using namespace std; int n; int a[303]; int b[303]; bool flag=false; void dfs(int k,int now,…
https://blog.csdn.net/imotolove/article/details/82777819 记忆化搜索,还不太理解..…
//递推关系式:(b[n-1]+b[n]+b[n+1])/3=a[n] //所以b[n+1]=3*a[n]-b[n-1]-b[n],或b[n+1]=3*a[n]-b[n-1]-b[n]+1,或b[n+1]=3*a[n]-b[n-1]-b[n]+2 //有三种结果是因为3的余数可以是0,1,2 //这里要考虑特殊情况,就是第一天和最后一天是除以2,所以写两种情况就可以了 #include <stdio.h>//因为数据比较小,所以可以直接搜索,枚举每一种可能性 #include <stri…
题目: 问题描述 在一条街上有n个卖菜的商店,按1至n的顺序排成一排,这些商店都卖一种蔬菜. 第一天,每个商店都自己定了一个价格.店主们希望自己的菜价和其他商店的一致,第二天,每一家商店都会根据他自己和相邻商店的价格调整自己的价格.具体的,每家商店都会将第二天的菜价设置为自己和相邻商店第一天菜价的平均值(用去尾法取整). 注意,编号为1的商店只有一个相邻的商店2,编号为n的商店只有一个相邻的商店n-1,其他编号为i的商店有两个相邻的商店i-1和i+1. 给定第一天各个商店的菜价,请计算第二天每个…
这题一开始不知道剪枝这种操作,只会傻傻地dfs. 然后dfs递归写80分超时,非递归写70分超时(纳尼?我一直以为非递归算法在时间上会更优秀一些,为什么会这样?!!) 剪一下枝就都能过了 #include<cstdio> #include<iostream> #include<algorithm> using namespace std; typedef long long ll; ],b[]; ][][]; int n; bool dfs(int step) { ]=…
先更新第一个做法:差分约束 转化成最长路,求出的每一个解是满足差分方程的最小值 spfa求最短路 对于边(x->y) 有: if(dis[y] > dis[x] + a[i].d) dis[y]=dis[x]+a[i].d; dis[y]的初始值为INF,dis[y]会是满足所有约束条件之中所有可能的值之中最大的(更新到最大的就不会再更新了). 贴一个简略的证明: 同理,最长路求出来的是所有可能解之中最大的. 这题是字典序最小,那么我们要转化成最长路来求,求到的每个s[i]都是可能的值中最小的…
碎碎念..近视加老花,还以为第二天除了第二家范围在100以内别的都不确定,于是x**算的记搜复杂度超时了.还鼓捣着什么差分区间最长路,虽然有大神用差分区间做出来了,然而自己并没有看懂. 其实就是一个记忆化搜索.搜索时用vis[n][300][300]记录访问状态.第二.三维数组下标映射第一天n-1.n号店的价格.每个数的范围是1-300,所以复杂度是n*300*300并不会超时. 注意第一天是两个数的均值,验证第n天时也是两个数的均值. #include <bits/stdc++.h> con…
题目链接:http://118.190.20.162/view.page?gpid=T79 问题描述 试题编号: 201809-1 试题名称: 卖菜 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在一条街上有n个卖菜的商店,按1至n的顺序排成一排,这些商店都卖一种蔬菜. 第一天,每个商店都自己定了一个价格.店主们希望自己的菜价和其他商店的一致,第二天,每一家商店都会根据他自己和相邻商店的价格调整自己的价格.具体的,每家商店都会将第二天的菜价设置为自己和相邻商店第一天菜价…
天朝屁民每天做T跟菜贩一样,进菜-卖菜,为伟大的菜贩精神点赞…
问题描述 在一条街上有n个卖菜的商店,按1至n的顺序排成一排,这些商店都卖一种蔬菜. 第一天,每个商店都自己定了一个价格.店主们希望自己的菜价和其他商店的一致,第二天,每一家商店都会根据他自己和相邻商店的价格调整自己的价格.具体的,每家商店都会将第二天的菜价设置为自己和相邻商店第一天菜价的平均值(用去尾法取整). 注意,编号为1的商店只有一个相邻的商店2,编号为n的商店只有一个相邻的商店n-1,其他编号为i的商店有两个相邻的商店i-1和i+1. 给定第一天各个商店的菜价,请计算第二天每个商店的菜…