CodeForces 954C Matrix Walk

YOLOv8改进:全网原创首发 | 新颖的多尺度卷积注意力(MSCA),即插即用,助力小目标检测 | NeurIPS2022 多尺度卷积注意力(MSCA),有效地提取上下文信息;1)作为注意力MSCA使用; 阅读详情

题目链接:CF 954C

这道比赛时候卡了好多的人啊。。看榜的时候发现大家都是wa了89发。。。贼坑

其实想的简单一点,先找到y值,再检查一遍就好了~

因为每个点只能向四个方向走,我们把这四个点的值与起始点的值相减,会发现只能是±1和±y,那么取绝对值之后除了1只能有1个值(y),有两个值就肯定错了

第二遍检查的时候,要注意两种情况(0的情况在第一步就可以判断)

①在右边界向右走

②在左边界向左走

处理之后找最大的值模y就是答案,也可以写10000000000

#include<iostream>
#include<cstdio>
#include<vector>
#include<set>
#include<map>
#include<string.h>
#include<cmath>
#include<algorithm>
#include<queue>
#include<stack>
#define LL long long
#define mod 1000000007
#define inf 0x3f3f3f3f
#define sqr(a) (a)*(a)
#define lan(a,b) memset(a,b,sizeof(a))

using namespace std;

LL a[200010];

int pin(LL x)
{
    if(x<0)
        return -x;
    return x;
}

int main()
{
    int n;
    while(~scanf("%d",&n))
    {
        lan(a,0);
        LL p=0;
        for(int i=1;i<=n;i++)
        {
            scanf("%lld",&a[i]);
            p=max(p,a[i]);
        }
        LL y=1;
        int flag=0;
        int pou=0;
        for(int i=2;i<=n;i++)
        {
            LL tem=pin(a[i]-a[i-1]);
            if(tem==0)
            {
                flag=1;
                break;
            }
            if(tem==1)
                continue;
            else if(y==1)
                y=tem;
            else if(tem!=y)
            {
                flag=1;
                break;
            }
        }
        if(flag==1)
        {
            printf("NO\n");
            continue;
        }
        for(int i=2;i<=n;i++)
        {
            LL tem=a[i]-a[i-1];
            if(y==1)
                continue;
            if(a[i-1]%y==0&&tem==1)
            {
                flag=1;
                //printf("%d\n",a[i]);
                break;
            }
            else if(a[i]%y==0&&tem==-1)
            {
                flag=1;
                break;
            }
        }
        if(flag==1)
        {
            printf("NO\n");
            continue;
        }
        LL maxx;
        if(p%y==0)
            maxx=p/y;
        else
            maxx=(p/y)+1;
        printf("YES\n");
        printf("%lld %lld\n",maxx,y);
    }
    return 0;
}

〔重庆理工大学〕操作系统实验指导书【实验三 系统调用】 本实验指导书详细介绍了在Linux 0.11系统中添加两个自定义系统调用(iam()和whoami())的完整流程。实验内容包括:修改unistd.h添加系统调用号,更新sys_call_table数组,实现内核函数sys_iam()和sys_whoami(),以及编写测试程序验证功能。关键步骤涉及用户态与内核态数据传递、系统调用号分配、中断处理机制等核心概念。实验要求学习者通过修改内核源码、理解系统调用原理,最终实现名字存储与读取功能,并完成测试验证。实验还提供了视频学习资源和参考书籍,帮助深入理解操作系 阅读详情

相关推荐

EPLAN二次开发实战指南:从API接口到定制化界面

本文为EPLAN二次开发实战指南,详细介绍了从搭建C#开发环境、理解API接口到创建定制化插件的完整流程。通过实战案例,如批量修改设备属性和设计交互式界面,帮助电气工程师利用EPLAN二次开发实现工作流程自动化与深度定制,从而显著提升设计效率。

weixin_29246195的博客 802

codeforces:C. Matrix Walk【构造】

找规律构造注意细节。

小楼一夜听春雨 321

NWD 格式转换 STL 全流程:专业方案与迪威模型网在线转换详解

在3D模型处理中,将NWD文件转换为STL格式是常见的需求,特别是在3D打印和计算机辅助制造等领域。NWD文件由Autodesk开发,主要用于建筑、工程和施工行业,包含丰富的几何图形和材质信息,但因其专有格式和大文件大小,限制了其应用范围。相比之下,STL格式广泛应用于3D打印,仅包含表面几何信息。转换NWD到STL的原因包括拓展模型应用场景和便于模型编辑。转换方法包括使用专业软件如Autodesk Navisworks配合Blender或3ds Max,或使用专门的转换工具如CADExchanger。

技术说明博主 2538

Codeforces Round 954 (Div.3)

CF954

djhws144的博客 1161

写一个b站爬虫(思路)

part 0 安装 scrapy, requests part 1 信息获取 打开番剧索引链接(https://www.bilibili.com/anime/index/) F12控制台,选中NETWORK,来到xhr文件,我们可以找到了存放番剧json的地方

kou的博客 484

PCB模块化设计24——DCDC电源模块PCB布局布线设计规范

PCB模块化设计24——DCDC电源模块PCB布局布线设计规范

qq_31444421的博客 2万+

Codeforces Round 954 (Div. 3) (A~F)(不会数学)

暴力枚举一下所有可能可以观察到:若一个数比周围四个数都大,那么最终会变成四个数当中最大的哪一个。对字符串c以及ind数组进行排序,通过贪心可以知道,我们需要按照索引从小到大的修改字符串,同时一个位置只会有一个字母与之对应,因此只需要同时按照字符串c从小到大修改即可。归纳题,观察后可以发现:一定有一个两位数,因此我们可以枚举这个两位数,然后取最小值。接下来考虑如何取最小值:若存在数字0,那么可以通过都用乘法来将最终结果变成0,此外,若存在数字1,可以通过乘法将1消掉。

weixin_61825750的博客 2571

5G NR上行控制信道PUCCH

一、PUCCH概述 PUCCH用于承载上行控制信息,相比LTE,NR PUCCH支持5种不同的格式,按照时域上所占用的符号数量可以分为短格式和长格式两种,如下表所示,短格式占用1-2个符号,可以承载1-2bit信息,长格式占用4-14个符号,可承载大于2bit的信息。NR引入短格式PUCCH的目的是可以缩短HARQ-ACK反馈的时延,长格式仍然是考虑到持续时间长可以保证覆盖。 NR中,考虑到系...

一个关于5G NR的博客^^ 3万+

Educational Codeforces Round 40 C. Matrix Walk

挺有技巧的一道题….需要考虑的细节不少,但是如果够机智,代码可以非常简单 注意到只能上下或左右走,而左右走时,绝对值差必为1;上下走时,绝对值差可能不为1,但一定相等,且为一行的元素数。 如此,只要判断序列中所有相邻数的绝对值差是不是只有两种可能。 但是,有一种特殊的情况:从一行末尾走到上/下一行开头是不合法的。这种情况需要特判。 由于题目并不要求最小的x,y,所以可以直接令x=10^9,...

HumveeA6的博客 296

UG NX与PLC-1500的在环虚拟测试

TIA、PLCSIM、NetToPLCsim、KEPServerEX以及UG NX的在环虚拟测试

lvtlvtlvtlvt的博客 4217

【AI智能体】Spring AI Tool 从使用到实战详解

Spring AI Tool

congge 5864

codeforces 954C. Matrix Walk(思维模拟)

codeforces 954C. Matrix Walk(思维模拟) http://codeforces.com/contest/954/problem/C 题意: 现在有一个大小为x*y的矩阵(x,y大小未知),然后规定A(i,j)的值为y*(i-1)+j,并且每次移动只能往四个方向移动。现在输入一个数n,然后输入n个数代表走过的轨迹a1,a...

weixin_30830327的博客 167

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之BswM模块配置详解(上)

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之BswM模块配置详解(上)

weixin_42412049的博客 736

CodeForces - 954C - Matrix Walk

坑题 题目:CodeForces - 954C 题意:矩阵的每一元素可以用 Ai, j = y*(i - 1) + j 来表示,(就是二维数组用一维指针表示的方法),给你一个路径序列,问这样的序列能否在前述矩阵中实现。能输出YES和x,y值(x的值不是必须最优),否则输出NO。 坑点:不能站着不动,任意的a[i] != a[i-1]; 思路: for循环找a数组中有没有相同的元素,有直...

Krone_的博客 401

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Codeforces 954C Matrix Walk (思维)

题目链接:Matrix Walk 题意:设有一个N×M的矩阵,矩阵每个格子都有从1~n×m的一个特定的数,具体数的排列如图所示。假设一个人每次只能在这个矩阵上的四个方向移动一格(上下左右),给出一条移动的轨迹上的数字,求出满足这个人移动轨迹的一格矩阵的N和M。 题解:首先可以确定的是左右移动的话,相邻格子之间数字相差的绝对值一定是1,而向上或向下移动的数字只差的绝对值一定...

152

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Codeforces 954C- Matrix Walk(思维+构造)

题目链接:https://codeforces.com/problemset/problem/954/C 博客园食用链接: https://www.cnblogs.com/lonely-wind-/p/13450882.html There is a matrix A of size x × y filled with integers. For every i∈[1,x],j∈[1,y]i\in[1,x],j\in[1,y]i∈[1,x],j∈[1,y] , Ai, j = y(i − 1) + jA_

孤风的博客 429

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Codeforces 954 C. Matrix Walk

好久没更新了 最近做的一些题,陆续写上来一些吧 ,,,C. Matrix Walktime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere is a matrix A of size x × y filled with integers. Fo...

Amo丶 274

codeforces954 C. Matrix Walk【思维】

C. Matrix Walk time limit per test1 second memory limit per test256 megabytes There is a matrix A of size x × y filled with integers. For every , Ai, j = y(i - 1) + j. Obviously, every integer fro...

nobleman 1772

Codeforces 954C - Matrix Walk(思维 + 模拟)

问题描述:给定n个数的序列,判断是否可以为矩阵内的路径。思路:先判断出x,y的值,O(n)模拟一遍判断即可。对于y值的判断,我想着一遍扫描直接得出结果使得程序更加繁杂。#include &lt;iostream&gt; #include &lt;cmath&gt; #include &lt;cstdio&gt; using namespace std; const int maxn = 2000...

%%% 265

Matrix Walk CodeForces - 954C

  题意:   就是给出一连串的数字 这些数字是从第一个数字依次走过的      emm。。就是这样。。 然后让你判断这个矩阵是否存在 如果存在输出行和列的数量 其中行。。开到最大就好了。。。主要是判断列   在输入的这些数中 如果出现一个数字和上一个不是连续的数字 则就能判断列了 y = abs(a[i] - a[i-1]) 然后如果再有不连续的 判断一下是否符合  ab...

weixin_30633507的博客 84

Matrix Walk CodeForces - 954C(模拟 很多要注意的细节)

题目思路 看完题意其实就能知道是个模拟题 可是需要注意的细节非常多 wa了一年 对着cf的数据一直改 还是wa 后来看了下别人的写法 发现我每次写模拟都喜欢只考虑当前的值 但是很多时候直接从全局考虑会简单很多 要注意行的长度为1的情况 考虑只有一个数的时候 然后行的个数直接输出1000000000就好了 列的个数要进行分类讨论 ac代码 #include <stdio.h> #include <iostream> #include <algorithm> #include

daydreamer23333的博客 282

codeforces 954C

codeforces 954C C. Matrix Walk introduction 一个x行y列矩形的矩形,每个格子的从左到右,从上到下编号。然后给出一条路径,确定x和y的值,使得这条路径成立。 method 容易观察到,行数可以取一个最大值,如1e9。 然后,当两个数的差大于1的时候,差就是列数(但是这只是必要,并不充分,还要检验) 这道题的思路就是先确定列数,然后检验是否符合要求。 需要检...

weixin_30621919的博客 88

9.21 几个构造

容易发现答案只和最小那个有关,所以只要让长度最小的子数组满足就行,其他的位置按顺序填入。还有特殊情况,比如3列的情况下,3不能直接到4,说明相差为1也不一定就是正确的。如果还没有确定列数,那么第一个相邻之差d不为1且不为0的就是列数。数字排列只和列数有关,所以行数可以固定为1e9。这种情况下,更小的那个数一定是d的倍数,特判。如果后续的差值既不为1也不为d,说明无解。写复杂了,好像可以直接取模写。

2403_87594317的博客 221

Codeforces Round 954 (Div. 3)(A~F的代码和分析)

codeforces 954 A~F的题解

2301_78429186的博客 621

954C. Matrix Walk

There is a matrix A of size x × y filled with integers. For every , Ai, j = y(i - 1) + j. Obviously, every integer from [1..xy] occurs exactly once in this matrix. You have traversed some path in this...

码农的一亩三分地 287

CF 954C Matrix Walk

当直接判断两个点的连接是否正确很繁琐时,不妨把从一个点出发能转移到的点全部计算出来,再去判断这个点集里有没有另一个点的存在。

toby的博客 327
上一篇: hdu 6148
下一篇: CodeForces 954D
Dale_zero
博客等级 码龄9年 10粉丝 174原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值