当前位置: 首页 > news >正文

大型门户网站建设效果中山做网站哪个公司好

大型门户网站建设效果,中山做网站哪个公司好,高淳网站建设,在网站服务器上建立数据库传送门&#xff1a;Problem - D - Codeforces 题目大意&#xff1a; 思路&#xff1a; 尽量要 最大值变小&#xff0c;最小值变大 即求 最大值的最小 和 最小值的最大 -> 二分答案 AC代码&#xff1a; 代码有注释 #include<bits/stdc.h> using namespace std; #…

传送门:Problem - D - Codeforces

题目大意:

思路:

尽量要 最大值变小,最小值变大

即求 最大值的最小 和 最小值的最大 -> 二分答案

AC代码:

代码有注释

#include<bits/stdc++.h>
using namespace std;
#define int long long
void solve()
{int n; cin >> n;vector<int> a(n + 1), b(n + 1);for (int i = 1; i <= n; i++) cin >> a[i];auto check1 = [&](int limit){// limit 此时就是 最大值的最小值// 经过操作后,若 b[i] <= limit 就是ok的,否则就放弃这个值// 最大值最小for (int i = 1; i <= n; i++) b[i] = a[i];for (int i = 1; i < n; i++){// b[i] 超过 limit ,就要减小 b[i]if (b[i] > limit){b[i + 1] += (b[i] - limit);b[i] = limit;}}for (int i = 1; i <= n; i++){if (b[i] > limit) return false;}return true;};int left = 0; int right = 1e12;while (right > left){int mid = left + right >> 1;if (check1(mid))right = mid;else left = mid + 1;}int ans = left;auto check2 = [&](int limit){// 最小值最大// limit 就是最小值的最大值for (int i = 1; i <= n; i++) b[i] = a[i];for (int i = 1; i < n; i++){if (b[i] > limit){b[i + 1] += (b[i] - limit);b[i] = limit;}}int mn = 2e18;for (int i = 1; i <= n; i++) mn = min(mn, b[i]);// 经过操作后,mn 仍大于 limit ,则可以继续增大limitif (mn >= limit)return true;else return false;};left = 0; right = 1e12;while (right > left){int mid = left + right + 1 >> 1;if (check2(mid))left = mid;else right = mid - 1;}cout << ans - left << endl;
}
signed main()
{int tt; cin >> tt;while (tt--)solve();return 0;
}

 

 加练二分:

传送门:Problem - D - Codeforces

题目大意:

 

 思路:

二分 顶点1要加上的值

AC代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
int n;
const int N = 2e5 + 10;
int h[N], e[N], ne[N], idx;
int a[N];
void add(int a, int b)
{e[idx] = b;ne[idx] = h[a];h[a] = idx++;
}
bool dfs(int u, int limit)
{if( limit > 1e9 ) return false; // 一定要加这个代码,否则就会爆 long long// 所有顶点的值都是 <= 1e9 的,所以 limit 肯定不能大于 1e9if (a[u] < limit){int temp = limit - a[u];limit += temp;}bool flag = false;for (int i = h[u]; i != -1; i = ne[i]){flag = true;int j = e[i];if (!dfs(j, limit)) return false;}if (!flag){if (a[u] >= limit) return true;else return false;}else return true;
}
bool check(int limit)
{for (int i = h[1]; i != -1; i = ne[i]){int j = e[i];if (!dfs(j, limit)) return false;}return true;
}
void solve()
{memset(h, -1, sizeof h); idx = 0;cin >> n;for (int i = 1; i <= n; i++){cin >> a[i];}for (int i = 2; i <= n; i++){int fa; cin >> fa;add(fa, i);}int left = 0; int right = 1e9;while (right > left){int mid = left + right + 1 >> 1;if (check(mid)) left = mid;else right = mid - 1;}cout << a[1] + left << endl;
}
signed main()
{int tt; cin>> tt;while(tt--)solve();return 0;
}

http://www.yayakq.cn/news/597532/

相关文章:

  • 网络科技一般经营什么seo网站打开慢
  • 个人网站做微擎网站到期时间
  • 江西网站设计服务上海人才市场档案存放中心
  • 做ppt网站大全微信商城有哪些
  • 做问卷调查的网站挣钱网络建设公司排行
  • 成都的网站建设装修设计公司公司价格表
  • 企业网站开发价设计君app下载
  • 男女做暖网站是什么网站建设优化河南
  • 凡科做的网站不能被收录销售crm
  • 网站 源码 php南城网站建设公司信息
  • 网站怎样优化文章关键词昌大建设地址
  • 快站app企业信用信息查询公示系统年审
  • 做旅游宣传图的网站重庆本地网站有哪些
  • 卖域名做非法网站网站配色方案 对比色
  • dede模板网站如何搭建丹徒网站建设平台
  • 网站建设的流程该怎么确定茂名住房证书城乡建设局官方网站
  • 丹阳建站制作软件的软件
  • 吉林省住房建设保障厅网站河南智能seo快速排名软件
  • 寺院网站模板慈利县建设局网站
  • 汕尾网站建设 生意好吗yellow最新免费观看
  • 做个网站多少钱郑州短视频运营公司
  • 慈溪网站建设南通公司网站制作
  • 广东网站建设人员wordpress 锚文本插件
  • 龙岩网站设计 贝壳下拉东莞做网站(信科网络)
  • 搭建外文网站响应式网页设计是什么
  • 给一个学校网站做宣传海报广安建设机械网站
  • 杭seo网站建设排名企业+php网站建设
  • 网站策划编辑如何做什么软件可以攻击网站
  • 樟木头做网站京东网站推广方式
  • dede 手机网站施工企业安全培训心得体会100字