Educational Codeforces Round 104 (Rated for Div. 2)(VP)(寒假ACM模拟赛2)

VP时间

A.找到最小,计算最小有几个

n-cnt;

1.ac

B.结论

模拟会超时

n&1:

n/2;相遇A继续走,B跳两格到n/2+1(n/2-1->n/2+1)

k<n/2就直接输出

n>k>n/2输出k+1

模拟一下 1234,12345

!n&1不会改变位置,直接输出k%n

n&1 找什么时刻会发现冲突

每一个周期冲突2次,

C.

偶数队伍就需要0

奇数队伍就1,-1,1,-1交替

D.

消C

a=sqrt(2*b+1);

c=b+1;

找范围暴力算

b<=n

a<=sqrt(2*n+1);

c<=n-1

n=1e9

min(n,1e5+9);

枚举a

!(pow(a,2)-1%2)ans++;

题解

A.
 

// Problem: A. Arena
// Contest: Codeforces - Educational Codeforces Round 104 (Rated for Div. 2)
// URL: https://codeforces.com/group/RAx5fiilkP/contest/1487/problem/A
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)//へ     /|
//  /\7    ∠_/
//  / │   / /
// │ Z _,< /   /`ヽ
// │     ヽ   /  〉
//  Y     `  /  /
// イ● 、 ●  ⊂⊃〈  /
// ()  へ    | \〈
//  >ー 、_  ィ  │ //
//  / へ   / ノ<| \\
//  ヽ_ノ  (_/  │//
//	  7       |/
//	  >―r ̄ ̄`ー―_
#include <iostream>
#include <cstring>
#include <iomanip>
#include <ctime>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <vector>
#include <stack>
#include <map>
#include <set>
#include <bitset>
#include <queue>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e6 + 9;
int a[N];
void solve() {int n;cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}int mn=INF;for(int i=1;i<=n;i++){mn=min(mn,a[i]);}int cnt=0;for(int i=1;i<=n;i++){if(mn==a[i]){cnt++;}}cout<<n-cnt<<'\n';}int main() {ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int q;cin >> q;while (q--) {solve();}return 0;
}

B.

根据行动路线可以画一个环

偶数环 (n=4)可以发现它们不会相遇,在k时刻时cout<<(k%n?k%n:0)<<'\n'; or (k-1)mod n+1

k==n时 nmodn=0;不正确 (故k-1)

奇数环 (n=5)可以发现相遇周期(t=(n-1/2))就是走k步后又多走(k/(t))步,防止(k==0)

因此cout<<(k-1+(k-1/(t)))%n+1<<'\n';

// Problem: B. Cat Cycle
// Contest: Codeforces - Educational Codeforces Round 104 (Rated for Div. 2)
// URL: https://codeforces.com/contest/1487/problem/B
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)//へ     /|
//  /\7    ∠_/
//  / │   / /
// │ Z _,< /   /`ヽ
// │     ヽ   /  〉
//  Y     `  /  /
// イ● 、 ●  ⊂⊃〈  /
// ()  へ    | \〈
//  >ー 、_  ィ  │ //
//  / へ   / ノ<| \\
//  ヽ_ノ  (_/  │//
//	  7       |/
//	  >―r ̄ ̄`ー―_
#include <iostream>
#include <cstring>
#include <iomanip>
#include <ctime>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <vector>
#include <stack>
#include <map>
#include <set>
#include <bitset>
#include <queue>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
void solve() {int n,k;cin>>n>>k;k--;//防止k==n cout<<0,之后补+1即可if(n&1){int t=(n-1)/2;cout<<(k+(k/t))%n+1<<'\n';}else{cout<<k%n+1<<'\n';}
}
int main() {ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int q;cin >> q;while (q--) {solve();}return 0;
}

C.

一共n个队

积分应该是kn分

每个队平均下来k分

胜负场x场

平局场y场

所以存在下面两个式子

x+y=\frac{n(n-1)}{2}

3x+2y=kn

得到

x=kn-n(n-1)

y=\tfrac{3n(n-1)}{2}-kn

要求平局数最小

故k最大

k\leqslant \frac{3(n-1)}{2}

当n为奇数时, k=\frac{3(n-1)}{2},x=\frac{n(n-1)}{2},y=0,每个队赢\frac{n-1}{2}

当n为偶数时,k=\frac{n-2}{2}+n-1,x=\frac{n(n-2)}{2},y=\frac{n}{2},每个队赢\frac{n-2}{2}

// Problem: C. Minimum Ties
// Contest: Codeforces - Educational Codeforces Round 104 (Rated for Div. 2)
// URL: https://codeforces.com/contest/1487/problem/C
// Memory Limit: 256 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)//へ     /|
//  /\7    ∠_/
//  / │   / /
// │ Z _,< /   /`ヽ
// │     ヽ   /  〉
//  Y     `  /  /
// イ● 、 ●  ⊂⊃〈  /
// ()  へ    | \〈
//  >ー 、_  ィ  │ //
//  / へ   / ノ<| \\
//  ヽ_ノ  (_/  │//
//	  7       |/
//	  >―r ̄ ̄`ー―_
#include <iostream>
#include <cstring>
#include <iomanip>
#include <ctime>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <vector>
#include <stack>
#include <map>
#include <set>
#include <bitset>
#include <queue>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e6 + 9;
int a[N];
void solve() {int n;cin>>n;int cnt=n*(n-1)/2;if((n&1)){for(int i=1;i<=cnt;i++){if(i&1){cout<<1<<" ";}else{cout<<-1<<" ";}}}else{for(int i=0;i<n;i++){for(int j=i+1;j<n;j++){if(j-i<n/2){cout<<1<<" ";}else if(j-i==n/2){cout<<0<<" ";}else{cout<<-1<<" ";}}}}cout<<'\n';}int main() {ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int q;cin >> q;while (q--) {solve();}return 0;
}

D.

// Problem: D. Pythagorean Triples
// Contest: Codeforces - Educational Codeforces Round 104 (Rated for Div. 2)
// URL: https://codeforces.com/contest/1487/problem/D
// Memory Limit: 256 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)//へ     /|
//  /\7    ∠_/
//  / │   / /
// │ Z _,< /   /`ヽ
// │     ヽ   /  〉
//  Y     `  /  /
// イ● 、 ●  ⊂⊃〈  /
// ()  へ    | \〈
//  >ー 、_  ィ  │ //
//  / へ   / ノ<| \\
//  ヽ_ノ  (_/  │//
//	  7       |/
//	  >―r ̄ ̄`ー―_
#include <iostream>
#include <cstring>
#include <iomanip>
#include <ctime>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <vector>
#include <stack>
#include <map>
#include <set>
#include <bitset>
#include <queue>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e6 + 9;
int a[N];
int n;
bool check(int a,int b,int c){return c*c==a*a+b*b;
}
void solve() {cin>>n;ll ans=0;n=sqrt(2*n-1);for(int i=2;i<=min(n,100009);i++){if(((i*i)-1)%2==0){ans++;}}cout<<ans<<'\n';}int main() {ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int q;cin >> q;while (q--) {solve();}return 0;
}

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

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

相关文章

ARM工控机Node-red使用教程

嵌入式ARM工控机Node-red安装教程 从前车马很慢书信很远&#xff0c;而现在人们不停探索“科技改变生活”。 智能终端的出现改变了我们的生活方式&#xff0c;钡铼技术嵌入式工控机协助您灵活布建能源管理、大楼自动化、工业自动化、电动车充电站等各种多元性IoT应用&#xff…

(16)微信自动化测试-PC微信多开

上次有位客服兄弟联系我&#xff0c;说他有几个微信号要运维&#xff0c;想在一台PC上面打开多个微信方便工作&#xff0c;不用手工切账号&#xff0c;所以我这里研究了下并提供了程序给他&#xff01; 因为微信默认是不允许一台电脑开多个程序的&#xff0c;使用托管.net中的…

Zernike多项式法生成相位理论推导及图像引导实现原理

目录 引言 波前传感器 ​编辑 关于相位计算问题补充 关于结构图的修正 光束质量评价指标 Zernike多项式 ​编辑Zernike多项式法生成相位 光强分布求波前相位-GS 更快的迭代方法SPGD 基于Zernike模式的SPGD 引言 我们还是先从第一篇文献开始理解展开今天分享的一些重…

Django Auth登录实战

前言 目标&#xff1a;实现用户登录和注销功能。涉及django登录知识点&#xff0c;如登录的用户名密码如何验证&#xff0c;输出错误如何提示&#xff0c;当用户未登陆时访问功能页面如何让用户去登录&#xff08;DjangoAuth&#xff0c;类似过滤器&#xff09;等。 效果图 开…

linux虚拟机网络不通,如何配置ip解决网络问题

续接前文 Hyper-V创建linux虚拟机&#xff0c;共享wifi网络-CSDN博客 创建虚拟机后&#xff0c;网络都正常&#xff0c;可以使用&#xff0c;今天的一次异常关机后&#xff08;电源不小心拔掉了&#xff09;&#xff0c;再次打开这个虚拟机&#xff0c;网络都失效了。。。。 …

CSS 压重按钮 效果

<template><view class="cont"><div class="container"><div class="pane"><!-- 选项1 --><label class="label" @click="handleOptionClick(0)":style="{ color: selectedOption ==…

java基于ssm的线上选课系统的设计与实现论文

摘 要 在如今社会上&#xff0c;关于信息上面的处理&#xff0c;没有任何一个企业或者个人会忽视&#xff0c;如何让信息急速传递&#xff0c;并且归档储存查询&#xff0c;采用之前的纸张记录模式已经不符合当前使用要求了。所以&#xff0c;对学生选课信息管理的提升&#x…

mysql聚簇索引和非聚簇索引

目录 InnoDB引擎MylSAM引擎聚簇索引的优点和缺点参考 聚簇索引和非聚簇索引的区别&#xff1a;叶节点是否存放一整行记录。 聚簇索引:将数据存储与索引放到了一块,索引结构的叶子节点保存了行数据。 非聚簇索引:将数据与索引分开存储&#xff0c;索引结构的叶子节点指向了数据对…

在vscode中创建任务编译module源文件

接昨天的文章 [创建并使用自己的C模块&#xff08;Windows10MSVC&#xff09;-CSDN博客]&#xff0c;觉得每次编译转到命令行下paste命令过于麻烦&#xff0c;于是研究了一下在vscode中创建自动编译任务。 经过尝试&#xff0c;在task.json中增加如下代码&#xff1a; {"…

Cloud模型matlab

学习资料python 多维正态云python 预备知识&#xff1a; 如何获取具有特定均值和方差的正态分布随机数。首先&#xff0c;初始化随机数生成器&#xff0c;以使本示例中的结果具备可重复性。 rng(0,twister);基于均值为 500 且标准差为 5 的正态分布创建包含 1000 个随机值的向…

将yolov8的检测框从正框修改为旋转框需要做那些修改?

将yolov8项目修改为yolov8_obb项目需要修改模型结构(增加角度预测)、dataloader(使其支持dota格式数据)、修改TaskAlignedAssigner(使其支持带角度的bbox)、修改loss(新增对角度的训练)、修改metric(将hbb指标titile修改为obb)、修改绘图代码(使其能绘制旋转框)。 …

Docker(八)Python+旧版本chrome+selenium+oss2+fastapi镜像制作

目录 一、背景二、能力三、核心流程图四、制作镜像1.资源清单2.Dockerfile3.制作镜像 五、启动测试 一、背景 近几年我们线下的创业团队已从零到一开发过好几个小程序项目&#xff0c;都是和体育相关。其中生成海报分享图片好像都是不可或缺的功能。之前的项目老板给的时间都比…