题解:AT_arc182_a [ARC182A] Chmax Rush!
题目传送门
洛谷题解
思路
我们只需要枚举每一个 \(v_i\),对于 \(i\) 后面的 \(v_j\) 如果 \(v_i > v_j\) 进行以下讨论。
- \(p_i = p_j\)
- \(p_i < p_j\)
- \(p_i > p_j\)
当 \(p_i = p_j\) 的时候。因为不论选哪个方案 \(p_i\) 这个位置都要替换,所以无解,直接输出。
当 \(p_i < p_j\) 的时候。我们可以确定对于 \(i\) 只能选方案一,对于 \(j\) 只能选方案二,这样才能保证两段没有交集。
而当 \(p_i > p_j\) 的时候。我们可以确定对于 \(i\) 只能选方案二,对于 \(j\) 只能选方案一,这样才能保证两段没有交集。
对于每一个 \(i\) 最初都有两种选择,而在讨论的时候,每排除一种情况 \(i\) 与 \(j\) 的方案数都要减一,最后答案就是每一个 \(i\) 的方案数的乘积。
代码
#include<bits/stdc++.h>
using namespace std;
int n,m;
int p[1000000],v[1000000];
int hh[6000][5];
int main()
{
ios::sync_with_stdio(false);
cin.tie(),cout.tie();
cin>>n>>m;
for(int i=1;i<=m;i++)
cin>>p[i]>>v[i];
for(int i=1;i<=m;i++)
hh[i][1]=hh[i][2]=1;
for(int i=1;i<=m;i++)
{
for(int j=i+1;j<=m;j++)
{
if(v[i]>v[j])
{
if(p[j]>p[i])
{
hh[i][2]=0;
hh[j][1]=0;
}
if(p[j]<p[i])
{
hh[i][1]=0;
hh[j][2]=0;
}
if(p[j]==p[i])
{
cout<<0;
return 0;
}
}
}
}
int ans=1;
for(int i=1;i<=m;i++)
{
ans*=(hh[i][1]+hh[i][2]);
ans%=998244353;
}
cout<<ans;
return 0;
}
题解:AT_arc182_a [ARC182A] Chmax Rush!的更多相关文章
- Codeforces Round #102 (Div. 2) 题解
A. 解一个方程. 还是厚颜无耻地暴力吧~ #include <iostream> using namespace std; int r1, r2, c1, c2, d1, d2; boo ...
- 【题解】JSOIWC2019 Round 5
题面: 题解: T1: 算法1: 枚举每个灯塔的方向,并分别判断是否有解.时间复杂度O(K*4^K). 预计得分:50-70分 算法2: 不难发现,当k≥4的时候一定有解,将最靠左的两个下面的朝右上. ...
- SDOI 2018二轮题解(除Day2T1)
博主诈尸啦 虽然一轮之后就退役了但是二轮还是要去划划水呀~ 然鹅学了不到一个月文化课再回来看OI的东西有一种恍如隔世的感觉,烤前感觉也没啥可复习的,就补一补去年二轮的题吧. 题目思路基本都参考自sha ...
- 【第400篇题解纪念2016年10月28日】【28.10%】【codeforces 617E】XOR and Favorite Number
time limit per test4 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...
- 【NOI 2019】同步赛 / 题解 / 感想
非常颓写不动题怎么办…… 写下这篇博客警示自己吧…… 游记 7.16 我并不在广二参加 NOI,而是在距离广二体育馆一公里远的包间打同步赛(其实就是给写不动题找个理由) 上午身体不舒服,鸽了半天才看题 ...
- Codeforces Round #624 (Div. 3) F. Moving Points 题解
第一次写博客 ,请多指教! 翻了翻前面的题解发现都是用树状数组来做,这里更新一个 线段树+离散化的做法: 其实这道题是没有必要用线段树的,树状数组就能够解决.但是个人感觉把线段树用熟了会比树状数组更有 ...
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
随机推荐
- 国内的开源AI模型共享网站(AI模型的GitHub)—— mindscope —— 使用git lfs方式下载模型文件
参考前文: 国内的开源AI模型共享网站(AI模型的GitHub)-- mindscope -- 对标外网的"huggingface",mindscope好用吗? 使用git lfs ...
- Ubuntu18.04下 修改conda环境和缓存默认路径
查看conda 的默认环境和缓存默认路径:conda info conda环境和缓存的默认路径(envs directories 和 package cache) envs directories ...
- 报错 qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in ““ even though it was found
参考: https://blog.csdn.net/qq_39938666/article/details/120452028 ==================================== ...
- vue&element项目实战
1.背景 百度脑图链接:http://naotu.baidu.com/file/26ee2d8db38ad67e9905ae065bb0445e?token=e538157034f38f0d 1.1. ...
- 手写一个AQS实现
1.背景 1.AQS简介AQS全称为AbstractQueuedSynchronizer(抽象队列同步器).AQS是一个用来构建锁和其他同步组件的基础框架,使用AQS可以简单且高效地构造出应用广泛的同 ...
- Java Web中的request,response,重定位与转发的详解
request与response响应 Web服务器接收到客户端的http请求,其会对每一次的http请求分别创建应该代表请求的request对象,和一个代表响应的response对象. request ...
- C#/.NET/.NET Core技术前沿周刊 | 第 2 期(2024年8.19-8.25)
前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...
- stm32学习之调试篇踩坑记录
如何下载fml文件 找不到64k的fml文件 could not stop cortex-m device:无法连接,我当时是在程序中的一些初始化函数中,有几条语句禁用了(JTAG+SW) 接线顺序, ...
- Visual Studio Code 重置“不再询问”选项
有一次使用 VS Code 重命名一个 Python 文件时,VS Code 询问"扩展'Python'希望通过移动此文件来进行重构更改".当时没有多想,选中"不再提问& ...
- 【Python自动化】之特殊的自动化定位操作
今天有时间了,想好好的把之前遇到过的自动化问题总结一下,以后有新的总结再更新 目录: 一.上传文件(4.11) 二.下拉框选择(4.11) 1.Select下拉框 2.非Select下拉框 三.下拉框 ...