【过题记录】 8.2 hddx

飞行棋

在这里插入图片描述
关于这一题
我在考场上手莫了n=2和n=3的情况
发现一点规律,大力猜想蒙了一个结论
结果蒙对了…

关于正确做法,发现零号点和其他几个点是不一样的。
因为对于0而言,他没有赠送的情况(只要摇到n就直接胜利)
因此0和其他点要分开讨论
对于1到n-1号点
他们花费1代价走到n的期望是 1 / ( n − 1 ) 1/(n-1) 1/(n1)
因此总的期望代价就是 n − 1 n-1 n1
不难得出 f 0 = 1 / n ∗ ∑ ( f i ) + 1 f_0=1/n*\sum(fi)+1 f0=1/n(fi)+1
结合上面,得出最终 f 0 = ( n − 1 ) ∗ ( n − 1 ) / n + 1 f_0=(n-1)*(n-1)/n+1 f0=(n1)(n1)/n+1


#include<bits/stdc++.h>
using namespace std;#define int long longconst int P = 1e9+7;int Power(int x,int y){int s = 1;while (y){if (y&1) s = s*x%P;x = x*x%P;y>>=1;}return s;
}signed main(){int t; cin>>t;while (t--){int n; cin>>n;int ans = (n-1)*(n-1)%P;ans = (ans+n)%P;ans = ans*Power(n,P-2)%P;cout<<ans<<endl;}return 0;
} 

开关灯

在这里插入图片描述

关于这一题
老老实实推了20分钟发现推不出来
“要不打表吧”
秒了…
如果 n % 3 = = 0 n\%3==0 n%3==0,答案就是 2 n 2^n 2n
否则就是 2 n / 3 ∗ 3 + 1 2^{n/3*3+1} 2n/33+1


#include<bits/stdc++.h>
using namespace std;#define int long long
const int P = 998244353;int Power(int x,int y){int s = 1;while (y){if (y&1) s = s*x%P;x = x*x%P;y>>=1;}return s;
}signed main(){int t; cin>>t;while (t--){int x; cin>>x;int a = 0;if (x%3 == 0)a = x;else a = (x/3*3)+1;cout<<Power(2,a)<<endl;}return 0;
}

猫罐头游戏

在这里插入图片描述
打表 打表 打表找了一下规律
发现奇奇奇必败
有一奇一偶必胜态
唯一要讨论的就是三个偶数的情况
仔细观察打表数据 仔细观察打表数据 仔细观察打表数据
发现对于三个偶数 a , b , c a,b,c a,b,c
将他们一直/2,直到有一个数为奇数
然后再按上面的奇偶性讨论即可。


#include<bits/stdc++.h>
using namespace std;
int T,a,b,c,jsq; 
int main(){scanf("%d",&T);while (T--){scanf("%d%d%d",&a,&b,&c);if (a==b&&b==c){printf("NO\n");continue; }jsq=(a%2)+(b%2)+(c%2);if (jsq==3){printf("NO\n");continue;}if (jsq==1||jsq==2){printf("YES\n");continue;}while (a%2==0&&b%2==0&&c%2==0){a/=2;b/=2;c/=2;}	jsq=(a%2)+(b%2)+(c%2);if (jsq==3){printf("NO\n");continue;}if (jsq==1||jsq==2){printf("YES\n");continue;}printf("YES\n");}return 0;
}

Array-Gift

在这里插入图片描述
不难得出
答案就只有三种情况
n − 1 n-1 n1, n n n, n + 1 n+1 n+1
而且我们发现,想要变0,只有操作1能让数变0
所以 n − 1 n-1 n1的情况是:有一个数为其他所有数的公因数
且只有这么一种情况。

n n n的情况比较多:
1、能找出一个 x = a i % a j x=a_i\%a_j x=ai%aj,使x为其他所有数的因数
2、能找出一个数x,使得 a i + x a_i+x ai+x为其他所有书的公因数
3、将所有数先按照操作1能变0的变成0,再按照1,2操作讨论

否则就是n+1


#include <bits/stdc++.h>using namespace std;
typedef long long ll;
typedef pair<int, int> PII;
const int INF = 0x3f3f3f3f;
const double eps = 1e-8, pi = acos(-1.0);
int t, a[110];
bool vis[110];
int b[110],m;
int gcd(int a, int b)
{return !b ? a : gcd(b, a % b);
}
int array_gcd(int l, int r, int x)
{int res;if(l==x)res = a[l + 1];elseres = a[l];for (int i = l; i <= r; i++){if (i == x)continue;res = gcd(res, a[i]);}return res;
}
void solve()
{int n, res; m = 0;cin >> n;for (int i = 1; i <= n; i++)cin >> a[i];if(n==1){cout << 0 << endl;return;}sort(a + 1, a + n + 1);int jsq = 0;for (int i = 1; i <= n; i++) vis[i] = 0;for (int i = 1; i <= n; i++) if(!vis[i])for (int j = 1; j <= n; j++){if (i == j) continue;if (a[i]%a[j] == 0 && vis[j] == 0){vis[i] = 1;  jsq++; break;}}for (int i = 1; i <= n; i++) if (!vis[i]) b[++m] = a[i];for (int i = 1; i <= m; i++) a[i] = b[i]; n = m;if (n == 1){cout<<jsq<<endl;return;}// 第一种情况int cnt = 0;for (int i = 2; i <= n; i++)if (a[i] % a[1] == 0)cnt++;
//    cout<<"cnt = "<<cnt<<endl;if (cnt == n - 1){cout << jsq+n - 1 << endl;return;}// 第二种情况// a[i]%a[j]==1for (int i = 1; i <= n; i++){for (int j = 1; j <= n; j++){if (i == j)continue;if (a[i] % a[j] == 1){cout << jsq+n << endl;return;}}}// a[1]+x==array_gcd(2,n,0);res = array_gcd(2, n, 0);if (res > a[1] && res != 1){cout << jsq+n << endl;return;}// a[i]%a[j]==array_gcd(1,n,i)for (int i = 1; i <= n; i++){res = array_gcd(1, n, i);for (int j = 1; j <= n; j++){if (a[i] % a[j] == res){cout << jsq+n << endl;return;}}}// 第三种情况cout << jsq+n + 1 << endl;
}
signed main()
{// #ifndef ONLINE_JUDGE//     freopen("D:/in.txt","r",stdin);//     freopen("D:/out.txt", "w", stdout);// #endifios::sync_with_stdio(false);cin >> t;while (t--)solve();return 0;
}
/*
100
5
4 11 17 18 16
*/

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

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

相关文章

【中项】系统集成项目管理工程师-第7章 软硬件系统集成-7.2基础设施集成

前言&#xff1a;系统集成项目管理工程师专业&#xff0c;现分享一些教材知识点。觉得文章还不错的喜欢点赞收藏的同时帮忙点点关注。 软考同样是国家人社部和工信部组织的国家级考试&#xff0c;全称为“全国计算机与软件专业技术资格&#xff08;水平&#xff09;考试”&…

【xss-labs-master】靶场通关详解!-----持续更新

XSS基础概念&#xff1a; 跨站脚本攻击XSS(Cross Site Scripting)&#xff0c;为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆&#xff0c;故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码&#xff0c;当用户浏览该页之时&#xff0c;嵌入其…

《技术人求职之道》之面试准备篇:不打无准备之仗,优秀技术人的面试前准备

摘要 本文为求职者提供面试前的全面准备策略,旨在提升面试成功几率并减轻面试前的焦虑和不自信。文章首先强调准备求职资料的重要性,包括简历、寸照、学历证明等,并建议提前准备以避免入职时的尴尬。接着,讨论对应聘公司进行调研的必要性,包括了解公司业务和技术需求,以…

《从U-Net到Transformer:深度模型在医学图像分割中的应用综述》论文阅读

网络首发地址&#xff1a;https://link.cnki.net/urlid/51.1307.tp.20231026.1648.002 摘要&#xff1a; U-Net以卷积神经网络&#xff08;CNN&#xff09;为主干&#xff0c;其易于优化促使在医学图像分割领域的发展&#xff0c; 但只擅长获取局部特征&#xff0c;缺乏长期相…

华为认证题库:HCIA-Datacom易错题(15)(含答案解析)

华为认证HCIA-Datacom易错题举例和答案分析。 需要更多题库资料&#xff0c;可以在文末领取 1. MPLS头部包括以下哪些字段? A.Label B.TTL C.EXP D.Tos Answer:A&#xff0c;B&#xff0c;C * 答案解析.MPLS头部包括&#xff0c;Label&#xff0c;EXP&#xff0c;S&…

六、5 TIM输入捕获介绍

1、基本知识介绍 &#xff08;1&#xff09; 注意&#xff1a; ①4个输入捕获和输出比较通道&#xff0c;共用4个CCR寄存器 ②CH1到CH4&#xff0c;四个通道的引脚也是共用的 ③同一个定时器输入捕获和输出比较&#xff0c;不能同时使用 &#xff08;2&#xff09;输入捕获…

JDFrame 一款比 Java 8 Stream 更灵活的数据处理工具

一、JDFrame 介绍 在大数据处理领域&#xff0c;Apache Spark以其强大的分布式计算能力和丰富的数据处理API而广受好评。然而&#xff0c;在许多日常的软件开发场景中&#xff0c;我们面临的数据量可能并不需要Spark这样的分布式系统来处理。相反&#xff0c;我们更希望有一种…

openeuler的mariadb数据库安装

下载数据库 yum install mariadb-server 如果出现文件冲突如下删除即可 yum remove selinux-policy-targeted --nobest --nobest 无视需求关系 systemctl enable --now mariadb.service #自启动 mysql_secure_installation 初始化Mysql根据自己需求填y|n 第一次进…

vue echarts 横向柱状图,交错正负轴标签

横向柱状图&#xff1a; 同一个页面展示多个相同横向柱状图&#xff1b; 代码如下&#xff1a; <template><div style"display: flex;justify-content: space-around;"><div v-for"(chart,index) in barChartList" :key"index"…

finalshell连接kali-Linux失败问题略谈

如果你正在使用fianlshell或者xshell等终端软件远程连接Linux进行工作&#xff0c;但是突然有一天&#xff0c;你死活连不上了&#xff0c;报错提示如下&#xff1a; java.net.ConnectException: Connection refused: connect 就像这样&#xff1a; 哪怕是重装虚拟机&#xff0…

易境通散货集拼系统是如何让散拼效率提高80%的?

散货集拼为什么必须要有靠谱的系统才行&#xff1f;因为散拼很容易出现各种问题&#xff0c;而且会连带着影响不同的环节。货物整箱利用空间不充足&#xff0c;会导致集装箱数量增加&#xff0c;运费成本激增&#xff0c;返工整理会耽误发货&#xff0c;延长送货时间&#xff0…

U盘文件或目录损坏无法读取?详解两大恢复策略

在日常的数字生活中&#xff0c;U盘作为便携的数据存储工具&#xff0c;承载着我们的重要文件与回忆。然而&#xff0c;当U盘中的文件或目录突然变得无法读取时&#xff0c;这份便捷瞬间转化为困扰。U盘文件或目录的损坏&#xff0c;往往是由于多种因素共同作用的结果&#xff…

使用 SpringBoot + 虚拟线程将服务性能提升几百倍

虚拟线程简介 虚拟线程是 Java 平台的一项创新特性。虚拟线程是一种轻量级的线程实现,它在操作系统层面并不对应真实的内核线程,而是由 JVM 进行管理和调度。这使得可以在不消耗大量系统资源的情况下创建大量的线程,从而能够更高效地处理并发任务。 虚拟线程与普通线程的区…

IT运维中,如何快速进行故障排查?(以银行APP交易故障为例)

一、事件背景 正值"五一"黄金周旅游高峰期&#xff0c;某城商行的手机APP突然出现大面积交易失败和严重卡顿现象。据初步统计&#xff0c;从上午10点开始APP的交易成功率从正常的99%骤降至75%左右&#xff0c;用户反馈的交易失败投诉量在短短2小时内激增了500%。与此…

【PyTorch】多对象分割项目

【PyTorch】单对象分割项目 对象分割任务的目标是找到图像中目标对象的边界。实际应用例如自动驾驶汽车和医学成像分析。这里将使用PyTorch开发一个深度学习模型来完成多对象分割任务。多对象分割的主要目标是自动勾勒出图像中多个目标对象的边界。 对象的边界通常由与图像大小…

2025浙江(杭州)国际安防产品展览会(浙江安博会)

2025浙江&#xff08;杭州&#xff09;国际智慧城市与安防产品展览会 2025hangzhou smart city And Security Expo 时间:2025年4月23-25日 地点:杭州国际博览中心 展会介绍 浙江&#xff08;杭州&#xff09;国际智慧城市及安防产品博览会&#xff08;简称:浙江安博会&#…

告别繁琐,AI助你轻松制作PPT!2024四大工具推荐

PPT是现代商务和教育领域中不可或缺的工具。然而&#xff0c;制作一份高质量的PPT往往需要花费大量的时间和精力。AI PPT制作工具的出现可以很好地解决这一问题。下面为大家推荐几个AI PPT制作工具。 笔灵AIPPT&#xff1a;智能设计&#xff0c;一键生成 链接&#xff1a;htt…

基于JSP、java、Tomcat三者的项目实战--校园交易网(3)主页--添加商品功能

技术支持&#xff1a;JAVA、JSP 服务器&#xff1a;TOMCAT 7.0.86 编程软件&#xff1a;IntelliJ IDEA 2021.1.3 x64 前文三篇登录和注册功能的实现 基于JSP、java、Tomcat、mysql三层交互的项目实战--校园交易网&#xff08;1&#xff09;-项目搭建&#xff08;前期准备工作…

Golang | Leetcode Golang题解之第309题买卖股票的最佳时机含冷冻期

题目&#xff1a; 题解&#xff1a; func maxProfit(prices []int) int {if len(prices) 0 {return 0}n : len(prices)f0, f1, f2 : -prices[0], 0, 0for i : 1; i < n; i {newf0 : max(f0, f2 - prices[i])newf1 : f0 prices[i]newf2 : max(f1, f2)f0, f1, f2 newf0, n…

【秋招笔试】24-07-27-OPPO-秋招笔试题(后端卷)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 编程一对一辅导 ✨ 本系列打算持续跟新 秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 💡 01.二进制反转游戏 问题描述 K小姐…