首页 > 其他分享 >2024/09/29 模拟赛总结

2024/09/29 模拟赛总结

时间:2024-10-01 20:35:13浏览次数:1  
标签:lfloor F2 texttt frac 09 29 rfloor 2024 aligned

\(0+0+0+0=0\),感觉不如 #include <bits./stdc++.h>

#A. 你相信()吗

\(70\) 分的 \(O(n^3)\) 算法很好解决,枚举出三盏灯的亮度后,剩下一个灯的亮度一定固定。对于每个格子剩余亮度需求取 max 即可。

然后我们充分发扬人类智慧,当 \(n \le 400\) 时跑暴力,否则考虑推式子,下面的 \(=\) 表示大概相等

令 \(i,j,k,e\) 分别为左上,右上,左下,右下灯的亮度

\[\left\{\begin{aligned}a & = i+\lfloor\frac{j}{2}\rfloor+\lfloor\frac{k}{2}\rfloor+\lfloor\frac{e}{4}\rfloor \\b & = j+\lfloor\frac{i}{2}\rfloor+\lfloor\frac{k}{4}\rfloor+\lfloor\frac{e}{2}\rfloor \\c & = k+\lfloor\frac{i}{2}\rfloor+\lfloor\frac{j}{4}\rfloor+\lfloor\frac{e}{2}\rfloor \\d & = e+\lfloor\frac{i}{4}\rfloor+\lfloor\frac{j}{2}\rfloor+\lfloor\frac{k}{2}\rfloor\end{aligned}\right. \]

我们枚举 \(i,j\),令 \(k^`=\lfloor\frac{k}{2}\rfloor,e^`=\lfloor\frac{e}{2}\rfloor\),对于后两个式子进行移项,得到:

\[\left\{\begin{aligned}c-\lfloor\frac{i}{2}\rfloor+\lfloor\frac{j}{4}\rfloor & = k+\lfloor\frac{e}{2}\rfloor = 2k^`+e^` & \texttt{F1} \\d-\lfloor\frac{i}{4}\rfloor-\lfloor\frac{j}{2}\rfloor & = e+\lfloor\frac{k}{2}\rfloor=2e^`+k^` & \texttt{F2}\end{aligned}\right. \]

将 \(e^`,k^`\) 当成未知数解方程,得到 \(k^`=\texttt{F1}-\frac{\texttt{F1}+\texttt{F2}}{3}, e^`=\texttt{F2}-\frac{\texttt{F1}+\texttt{F2}}{3}\)

然后因为这是大概范围,需要左右偏移找答案,偏移值 \(35\) 左右就可以了

// BLuemoon_
#include <bits/stdc++.h>

using namespace std;
using LL = long long;

LL a, b, c, d, e, c3, c4, ed, k, v, v_, ed_, ans = 1e18;

int main() {
  freopen("light.in", "r", stdin), freopen("light.out", "w", stdout);
  cin >> a >> b >> c >> d;
  if (a <= 400 && b <= 400 && c <= 400 && d <= 400) {
    for (int i = 0; i <= a; i++) {
      for (int j = 0; j <= b; j++) {
        for (int k = 0; k <= c; k++) {
          e = max({0ll, d - i / 4 - j / 2 - k / 2, (a - i - j / 2 - k / 2) << 2, (b - j - i / 2 - k / 4) << 1, (c - j / 4 - i / 2 - k) << 1}), ans = min(ans, i + j + k + e);
        }
      }
    }
    cout << ans << '\n';
    return 0;
  }
  for (int i = 0; i <= a; i++) {
    for (int j = 0; j <= b; j++) {
      c3 = c - i / 2 - j / 4, c4 = d - j / 2 - i / 4, v = c3 - (c3 + c4) / 3, v_ = c4 = (c3 + c4) / 3, v <<= 1, v_ << 1, ed = min(c, v + 35), ed_ = min(d, v_ + 35);
      for (int k = max(0ll, v - 35); k <= ed; k++) {
        e = max({0ll, d - i / 4 - j / 2 - k / 2, (a - i - j / 2 - k / 2) << 2, (b - j - i / 2 - k / 4) << 1, (c - j / 4 - i / 2 - k) << 1}), ans = min(ans, i + j + k + e);
      }
      for (int e = max(0ll, v_ - 35); e <= ed_; e++) {
        k = max({0ll, (d - i / 4 - j / 2 - e) << 1, (a - i - j / 2 - e / 4) << 1, (b - j - i / 2 - e / 2) << 2, c - j / 4 - i / 2 - e / 2}), ans = min(ans, i + j + k + e);
      }
    }
  }
  cout << ans << '\n';
  return 0;
}

#B. 爪巴

\(O(2^n)\) 拿了 \(80\) 哈哈

标签:lfloor,F2,texttt,frac,09,29,rfloor,2024,aligned
From: https://www.cnblogs.com/bluemoon-blog/p/18443203

相关文章

  • 【牛客训练记录】2024牛客国庆集训派对day1
    https://ac.nowcoder.com/acm/contest/90188#question赛后反思好像没有,全场只做出来一题QAQJ题想在图上找到同色三角形,我们枚举至少是\(O(n^3)\)的,所以我们考虑容斥定理(?),去找异色三角形,因为只要保证一条边上两点颜色不一样,另找一点随便都可以,所以我们只要统计白色的点数,......
  • 当一群人聚在 RTE Open Day 现场|S 创上海 2024 回顾
       散场以后 9月20和21日的上海,RTE开发者社区正在主持第四期RTEOpenDay。这里有两场台风暴雨,和一群并没有因此降低半分热情的RTEbuilders! 这次我们把为实时互动领域的开发者们搭建的线下交流场,放在了一个年轻、多元、活力十足的科技聚会——S创上海202......
  • 29_分布式文档系统_深度图解剖析document数据路由原理
    (1)document路由到shard上是什么意思?(2)路由算法:shard=hash(routing)%number_of_primary_shards举个例子,一个index有3个primaryshard,P0,P1,P2每次增删改查一个document的时候,都会带过来一个routingnumber,默认就是这个document的_id(可能是手动指定,也可能是自动生成)routing=_i......
  • 2024.09 做题记录
    20240901上午模拟赛能想出来T2,但是怎么没想出来呢。T2:及时去想\(2^{k/2}\)的做法,猜到是DP套DP,但是没有进一步思考内层状态是\(O(2^{k/2}k)\)的。T3:没调完/fn/fnT4:赛时会了\(f_{i,j}\)表示\(B(i,j)\)是否可行,但是么有去想进一步的单调性优化,\(f_{i}\)可以表示最......
  • CSP2024-30
    A题意:将一个圆等分为\(K\)分,给出其中\(n\)个等分点的编号,\(x_i<x_{i+1}\)。有向边\(i\toj\)存在,当且仅当\(j\)是距离\(i\)最大的点(不唯一),且与图中其他边无交点(端点不算)。求图中最多有多少条边。\(3\leK\le10^9,3\len\le\min(K,10^5)\)。引理:不存在......
  • The 2024 ICPC Asia East Continent Online Contest (II)
    A.GamblingonChoosingRegionals最差情况就是,强队都和你去一起。因此赛站越小,排名也一定越小。然后只要动态实现出每个学校最强的若干只队伍就好了。#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;#defineinti64using......
  • 2024 北京市大学生程序设计竞赛
    Preface北京市赛(×),小WF(确信)感觉这场题总体都挺难的,除了前1h出了两个题后,后面基本上都是1h出一题然后最后1h发生了经典的我和徐神B,F双开双会,最后开始抢机时,最后经典的一个没写出来赛后发现F赛时代码改个初值就能过了,而徐神多花了半小时也是成功把B过了只能说还......
  • 论文总结1--基于深度强化学习的四足机器人步态分析--2024.10.01
    四足机器人的运动控制方法研究1.传统运动控制-基于模型的控制方法  目前,在四足机器人研究领域内应用最广泛的控制方法就是基于模型的控制方法,其中主要包括基于虚拟模型控制(VirtualModelControl,VMC)方法、基于零力矩点(ZeroMomentPoint,ZMP)的控制方法、弹簧负载倒立摆算法......
  • 【训练记录】2024年莆田市高中信息学奥赛国庆集训CSP-S提高组(第一天场外)
    训练情况rank#15\(100+0+40+0=140\)赛后反思T3忘记负数取模,丢了\(60\)分T1.跑步显然,找到第一个大于\(t\)的\(a,b,c\)倍数,所以我们直接\(t\diva,b,c\)向上取整,再乘回去,最后减去\(t\)即可,注意一下ceil好像会爆#include<bits/stdc++.h>#definei......
  • 视频编辑软件Adobe Premiere PR2024软件下载安装
    目录简介下载安装安装步骤软件特点使用教程简介AdobePremiere(简称Pr)是由Adobe公司开发的一款功能强大的视频编辑软件。它支持多平台运行,包括Windows、MacOS和Linux系统,为视频编辑爱好者和专业人士提供了丰富的工具集。Premiere以其出色的编辑画面质量、良好的兼容性......