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

2026-05-03

CF

Problem - 1413C - Codeforces

优先队列好题,和最小函数值解法类似
先找每个b的品位最大值,然后用小根堆找其中的最小值,更新答案,并且把当前这个b的品味增大,(即把最小值变大),此时一定能把差值(max-min)变小。

#include <bits/stdc++.h>
using namespace std;
#define LL long long
//#define double long double
#define endl '\n'
#define ULL unsigned long long
#define pii pair<int, int>
const LL mod = 998244353;
const int N = 1e5+10;
priority_queue<pii, vector<pii>, greater<pii>> q;
int cnt[N], b[N];int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);vector<int> a(6);for (int i = 0; i < 6;i++){cin >> a[i];}sort(a.begin(), a.end(), greater<int>());int n, mx = 0, ans = 1e9;cin >> n;for (int i = 1; i <= n;i++){cin >> b[i];q.push({b[i] - a[0], i});mx = max(mx, b[i] - a[0]);}while(!q.empty()){auto now = q.top();q.pop();ans = min(ans, mx - now.first);int t = now.second;cnt[t]++;if(cnt[t]>=6){cout << ans << endl;return 0;}q.push({b[t] - a[cnt[t]], t});mx = max(mx, b[t] - a[cnt[t]]);}
}

Problem - 1647D - Codeforces

漂亮数其实就是“能被 d 整除,但不能被 d² 整除”的数
一道有坑的分类讨论

注意d=s*s 时,要满足 \(k>3\)
还有,当判断 \(s\) 是合数时还要特判 \(s\) 不是 1

#include <bits/stdc++.h>
using namespace std;
#define LL long long
//#define double long double
#define endl '\n'
#define ULL unsigned long long
const LL mod = 998244353;
const int N = 2e5+10;bool isprime(int x){if(x<2)return false;for (int i = 2; i * i <= x;i++){if(x%i==0)return false;}return true;
}void solve()
{int x, d;cin >> x >> d;int k = 0, s = x;while(s%d==0)s /= d, k++;if(k<=1){cout << "NO\n";return;}if(isprime(s)==false&&s!=1){//注意,这里特判 1cout << "YES\n";return;}if(isprime(d)){cout << "NO\n";return;}else{if(d==s*s){if(k>=4){cout << "YES\n";}else{cout << "NO\n";}}else{if(k>=3){cout << "YES\n";}else{cout << "NO\n";}}}}int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int T;cin >> T;while (T--){solve();}
}

牛客周赛

F-小苯的DFS_牛客周赛 Round 142

树形dp+DFS

#include <bits/stdc++.h>
using namespace std;
#define LL long long
//#define double long double
#define endl '\n'
#define ULL unsigned long long
const LL mod = 998244353;
const int N = 2e5+10;
vector<int> e[N];
LL a[N];
LL f[N], inv[N], dp[N], mx[N], mn[N];void init(int n){f[0] = f[1] = inv[0] = inv[1] = 1;for (int i = 2; i <= n; i++){f[i] = f[i - 1] * i % mod;inv[i] = mod - (mod / i) * inv[mod % i] % mod;}for (int i = 1; i <= n; i++){inv[i] = inv[i - 1] * inv[i] % mod;}
}void dfs(int u,int fa){dp[u] = 1;mx[u] = a[u];mn[u] = 1e9;vector<pair<LL, LL>> ch;for(auto v:e[u]){if(v==fa)continue;dfs(v, u);if(dp[v]==0){dp[u] = 0;return;}mx[u] = max(mx[u], mx[v]);mn[u] = min(mn[u], a[v]);dp[u] = dp[u] * dp[v] % mod;ch.push_back({a[v], mx[v]});}if(a[u]>mn[u]){dp[u] = 0;return;}int c = ch.size();sort(ch.begin(), ch.end());for (int i = 0; i+1 < c;i++){if(ch[i].second>ch[i+1].first){dp[u] = 0;return;}}LL cnt = 1;for (int i = 0,j; i < c;i=j){j = i;while(j<ch.size()&&ch[j].first==ch[i].first)j++;cnt = cnt * f[j - i] % mod;}dp[u] = dp[u] * cnt % mod * inv[c] % mod;
}void solve()
{int n;cin >> n;for (int i = 1; i <= n;i++){cin >> a[i];e[i].clear();mx[i] = 0;dp[i] = 0;}for (int i = 1; i < n;i++){int u, v;cin >> u >> v;e[u].push_back(v);e[v].push_back(u);}dfs(1, 0);cout << dp[1] << endl;
}int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);init(200000);int T;cin >> T;while (T--){solve();}
}
http://www.jsqmd.com/news/746823/

相关文章:

  • Python爬虫进阶:深入理解requests.utils.unquote()——URL编码与解码完全指南
  • 初次使用 Taotoken 从注册到发出第一个请求的全流程体验
  • 5分钟快速上手:暗黑破坏神2单机玩家的终极存档编辑器指南
  • 可定制尺寸的工业烤盘厂家哪个好
  • 从深蓝学院作业到实战:手把手教你用C++/ROS实现A*三维路径规划(附完整代码与避坑指南)
  • Ice:重构macOS菜单栏管理的革命性事件驱动架构
  • 初次接触大模型API的开发者如何通过Taotoken文档快速完成集成
  • 鸣潮自动化终极指南:10个技巧让你告别重复劳动,AI帮你轻松刷声骸做日常
  • Autosar NVM存储实战:从“实时写”到“下电写”,你的CRC校验和Block竞争处理对了吗?
  • 避坑指南:在PyTorch中实现InfoNCE Loss时,温度系数和正负样本处理的那些细节
  • GB14881食品生产通用卫生规范解读一门窗
  • 为团队统一开发环境利用 TaoToken CLI 一键配置密钥
  • 蓝桥杯单片机零基础入门:借助快马AI生成带详解注释的示例代码
  • 投标合规提效:用 OpenClaw 实现标书 / 合同自动审核、关键词校验、格式优化,降低废标风险
  • Electron应用打包踩坑实录:用Forge打包Vue3项目,如何优化体积和解决资源路径问题?
  • PyCharm项目解释器选错了?从根源上解决ModuleNotFoundError(以numpy为例)
  • Taotoken 标准 OpenAI 协议兼容性带来的分钟级接入体验
  • 避坑指南:ESP-01S AT指令连接TCP服务器老是失败?可能是这5个细节没做好
  • 从PubChem到Origin:一个药物化学新手的SAScore计算与可视化全流程(Linux + RDKit + Python)
  • 为什么 OA+AB=OB?
  • PartUV技术:语义驱动的智能三维建模UV展开方案
  • 题解:学而思编程 2026年春第5周周赛 语言基础组 T3 增长或翻倍
  • 从Windows到iOS再到Linux,Python跨端编译测试全链路打通,手把手教你用GitHub Actions实现98.3%通过率
  • SD-PPP:Photoshop AI插件革命 - 让AI绘图与创意设计无缝融合
  • GIL锁竞争、引用计数异常、C扩展段错误——Python生产环境三大“幽灵故障”根因分析与压测验证方案
  • FPGA玩家低成本玩转MIPI CSI-2:基于Intel MAX 10的无源电阻网络配置与信号实测
  • 别再死记硬背了!图解C++递归解决汉诺塔问题的完整心路历程
  • 英雄联盟智能助手:如何用Akari提升你的游戏效率300%
  • 观察Taotoken控制台如何清晰展示各API Key的调用量与权限状态
  • 一个下午,1400行Python,零依赖实现了一个网站生成器