bzoj 1965 数学
首先我们可以发现每张牌的对应关系,假设序号为x的牌,经过一次洗牌后的位置为:
2*x x<=n/2
2*(x-n/2)-1 x>n/2
那么我们可以将下面的式子化简,变成2*x-n-1,其实这个就是2*x%(n+1),那么经过m次变换,x的位置为2^m*x%(n+1),设最后的答案为x,那么我们可以列出式子
2^m*x%(n+1)=l,拓展欧几里得做就行了。
/**************************************************************
Problem: 1965
User: BLADEVIL
Language: C++
Result: Accepted
Time:0 ms
Memory:804 kb
****************************************************************/
//By BLADEVIL
#include <cstdio>
#define LL long long
using namespace std;
LL n,m,l;
LL x,y;
LL mi(LL x) {
LL ans=,sum=;
while (x) {
if (x&) ans=(ans*sum)%(n+);
sum=(sum*sum)%(n+);
x>>=;
}
return ans;
}
void ex_gcd(LL a,LL b) {
if (!b) {
x=l; y=; return;
}
ex_gcd(b,a%b);
LL z=x;
x=y;
y=z-(a/b)*y;
}
int main() {
scanf("%lld %lld %lld",&n,&m,&l);
LL a=mi(m),b=n+;
ex_gcd(a,b);
x=((x%b)+b)%b;
printf("%lld\n",x);
return ;
}
bzoj 1965 数学的更多相关文章
- bzoj 5334 数学计算
bzoj 5334 数学计算 开始想直接模拟过程做,但模数 \(M\) 不一定为质数,若没有逆元就 \(fAKe\) 掉了. 注意到操作 \(2\) 是删除对应的操作 \(1\) ,相当于只有 \(1 ...
- BZOJ 1965: [Ahoi2005]SHUFFLE 洗牌( 数论 )
对于第x个数, 下一轮它会到位置p. 当x<=N/2, p = x*2 当x>N/2, p = x*2%(N+1) 所以p = x*2%(N+1) 设一开始的位置为t, 那么t*2M%(N ...
- BZOJ 4173: 数学
4173: 数学 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 462 Solved: 227[Submit][Status][Discuss] D ...
- BZOJ 5334--[Tjoi2018]数学计算(线段树)
5334: [Tjoi2018]数学计算 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 220 Solved: 147[Submit][Status ...
- BZOJ 1965 [Ahoi2005]SHUFFLE 洗牌:快速幂 + 逆元
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1965 题意: 对于扑克牌的一次洗牌是这样定义的,将一叠N(N为偶数)张扑克牌平均分成上下两 ...
- BZOJ 3157 &数学乱搞...
挖一发坑...一碰到数学题头晕眼花...看着证明感觉我幼儿园还没毕业... http://www.cnblogs.com/zhuohan123/p/3726933.html 等我会完完整整地写一发la ...
- bzoj 1965: [Ahoi2005]SHUFFLE 洗牌
#include<cstdio> #include<cstring> #include<iostream> #define ll long long using n ...
- bzoj 3142 数学
找规律后可以之后答案就是 k^(m-1)*(n-(m-1)*k)+(m+(m-1)*k+1)*k^(m-1) div 2 /************************************** ...
- bzoj 3293 数学整理
和1045一模一样,找到这道题的时候还愣了下神,最后发现样例都是 一样的,直接粘了1045的代码,具体题解看 http://www.cnblogs.com/BLADEVIL/p/3468729.htm ...
随机推荐
- 如何将PDF的背景色设置为保护眼睛的苹果绿色
福昕阅读器请戳这里. Adobe Acrobat请戳这里.
- 原生js操作Dom节点:CRUD
知识点,依然会遗忘.我在思考到底是什么原因.想到研究生考试准备的那段岁月,想到知识体系的建立,知识体系分为正向知识体系和逆向知识体系:正向知识体系可以理解为教科书目录,逆向知识体系可以理解考试真题. ...
- 【Linux】- CentOS查看IP
1.查询命令: ip addr 显示如图: 可以看到ens33没有inet这个属性,那么就没办法通过IP远程连接. 2.设置配置文件: vi /etc/sysconfig/network-script ...
- [剑指Offer] 63.数据流中的中位数
题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值.如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值. c ...
- Codeforces Round #524 Div. 2 翻车记
A:签到.room里有一个用for写的,hack了一发1e8 1,结果用了大概600+ms跑过去了.惨绝人寰. #include<iostream> #include<cstdio& ...
- Linux进程间通信简介
本人仅做简介.转自:http://www.linuxidc.com/Linux/2013-06/85904p2.htm 管道( pipe ): (Linux进程间通信) 管道是一种半双工的通信 ...
- [Leetcode] permutations ii 全排列
Given a collection of numbers that might contain duplicates, return all possible unique permutations ...
- AOJ.592 神奇的叶子
神奇的叶子 Time Limit: 1000 ms Case Time Limit: 1000 ms Memory Limit: 64 MB Total Submission: 920 Submiss ...
- JavaScript定义类与对象的一些方法
最近偶然碰到有朋友问我"hoisting"的问题.即在js里所有变量的声明都是置顶的,而赋值则是在之后发生的.可以看看这个例子: 1 var a = 'global'; 2 (fu ...
- springboot初学
首先苦于用ssh.ssm来搭建一个项目,这个基础搭建工作就大概要用半天的功夫才能弄好,想到就头疼,后面听了实验室一位大神的建议,用springboot啊,简单的不止一点点.就顺便学习了下这个神器,果然 ...