CF1506A Strange Table 题解

技术CF1506A Strange Table 题解 CF1506A Strange Table 题解CF1506A Strange Table 题解Content
给定一个 \(n\times m\)

CF1506A怪表问题解释

CF1506A怪表问题解释

Content

给出一个\(n次m\)的矩阵。首先,将\ (1,1) \)所在位置上方的数字为\(1\),然后从上到下依次在该列的所有位置上填写\(2,3,\点,n \),再从上到下依次在右侧的所有列上填写\ (n 1,n 2,\点,2n)。

现在换一种填写数字的方式。首先\ (1,1) \)所在位置上方的数字仍然是\(1\),然后从左到右用\(2,3,\点,m\)填充该行中的所有位置,然后从左到右用\(m ^ 1,m ^ 2,\点,2m)填充以下所有行。

给定\(t\)组数据,每组数据给定三个正整数\(n,m,x\),你想知道数字\(x\)用第一种方式填充后会变成什么位置。

数据范围:\(1\leqslant t\leqslant 10^4\),\(1\leqslant n,m\leqslant 10^6\),\(1\leqslant x\leqslant n\times m\)。

Solution

作为Div的一个问题。3、这个问题签到好。

我们不妨先计算一下所需位置所在的行和列。不难想到所需位置在行\(a=\ left \ l ceil \ d frac xn \ right \ r ceil \)和列\(b=(x-1)\bmod n 1\)中。然后,我们发现当前行前面已经填入了\((a-1)\cdot m\)的数字,而这一行应该填入\(b\)的数字,所以答案是\((a-1)\ cdot m b=(\ left \ l ceil \ d frac xn \ right \

请注意本题要开 long long。

Code

int main(){ 0

MT {

ll n=Rll,m=Rll,x=Rll

ll列=(int)ceil(x * 1.0/n),行=(x-1)% n 1;

printf('%lld\n ',(第- 1行)* m列);

}

返回0;

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/147911.html

(0)

相关推荐

  • java环形队列如何控制循环时间(java并发如何判断阻塞队列已满)

    技术Java阻塞队列BlockingQueue怎么实现这篇文章主要讲解了“Java阻塞队列BlockingQueue怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“

    攻略 2021年12月21日
  • C#序列号的设计不重复的实现方法是什么

    技术C#序列号的设计不重复的实现方法是什么这篇文章主要介绍“C#序列号的设计不重复的实现方法是什么”,在日常操作中,相信很多人在C#序列号的设计不重复的实现方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操

    攻略 2021年11月26日
  • Dynamic Batching不生效该怎么办

    技术Dynamic Batching不生效该怎么办Dynamic Batching不生效该怎么办,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。最近在项目开发

    攻略 2021年11月16日
  • 如何使用树莓派自动签到贴吧

    技术如何使用树莓派自动签到贴吧这篇文章将为大家详细讲解有关如何使用树莓派自动签到贴吧,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。crontab -e3 0 * * *

    攻略 2021年11月19日
  • 古典密码学——移位密码 Shift Cipher

    技术古典密码学——移位密码 Shift Cipher 古典密码学——移位密码 Shift Cipher移位密码的理论基础是数论中的模运算。模运算的基本定义:假设a和b均为整数,m是一正整数。若m整除a-

    礼包 2021年12月3日
  • Java多线程程序初步设计方法是什么

    技术Java多线程程序初步设计方法是什么本篇内容主要讲解“Java多线程程序初步设计方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java多线程程序初步设计方法是什

    攻略 2021年11月20日