【牛客 -330E 】Applese 涂颜色(费马小定理,超级快速幂)

题干:
 

精通程序设计的 Applese 叕写了一个游戏。


在这个游戏中,有一个 n 行 m 列的方阵。现在它要为这个方阵涂上黑白两种颜色。规定左右相邻两格的颜色不能相同。请你帮它统计一下有多少种涂色的方法。由于答案很大,你需要将答案对 109+7109+7 取模。

输入描述:

仅一行两个正整数 n, m,表示方阵的大小。

输出描述:

输出一个正整数,表示方案数对 109+7109+7 取模。

示例1

输入

复制

1 1

输出

复制

2

示例2

输入

复制

2 2

输出

复制

4

备注:

1≤n,m≤10^100000

解题报告:

   这题解法很多,FZU - 1759类似的原题。

AC代码:(phthon版)

def qpow(a,b,c):a=a%cans=1while b!=0:if b&1:ans=(ans*a)%cb>>=1a=(a*a)%creturn ans
x = list(map(int, input().strip().split()))
print(qpow(2,x[0]%(1000000006),1000000007))

AC代码2:(phthon版)

print(pow(2,int(input().split()[0]),10**9+7))

所以pow函数内部是跨粟米实现的???不明白23333

 

AC代码3:(费马小定理 + 指数循环节)

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<queue>
#include<map>
#include<vector>
#include<set>
#include<string>
#include<cmath>
#include<cstring>
#define ll long long
#define pb push_back
#define pm make_pair
#define fi first
#define se second
using namespace std;
const int MAX = 2e5 + 5;
const ll mod=1000000007;
char s[MAX],s1[MAX];
ll qpow(ll a,ll k) {ll res = 1;while(k) {if(k&1) res=(res*a)%mod;a=a*a%mod;k>>=1;}return res;
}
ll euler(int n) { int res=n,a=n;for(int i=2; i*i<=a; i++) {if(a%i==0) {res=res/i*(i-1);while(a%i==0) a/=i;}}if(a>1) res=res/a*(a-1);return res;
}
int main() {int n,m;ll c = euler(mod);//1e9+6ll b=0;scanf("%s",s);scanf("%s",s1);int len=strlen(s);
//	for(int i=len-1; i>=0; i--) {
//		if(s[i]=='0') s[i]='9';
//		else {
//			s[i]=s[i]-1;break;
//		}
//	}for(int i=0; i<len; i++) {b=b*10+s[i]-'0';b=b%c;}cout << qpow(2,b+c) <<endl;return 0;
}

注释掉的那一部分可以当成一个小板子、、目的在于给一个字符串存下的整数执行 -1 操作。

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

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

相关文章

四元数乘法_JPL四元数和Hamilton四元数的区别

四元数的定义&#xff1a; 1.顺序JPL: 实部在后 , Hamilton: 实部在前 , 2.坐标系JPL: 左手坐标系 Hamilton: 右手坐标系 3.坐标系的转换方向JPL: global-to-local 世界坐标系 --> 局部坐标系 , Hamilton: local-to-global 局部坐标系 --> 世界坐标系 , 4.四元数与旋…

【牛客 - 330I】Applese 的回文串(结论题,类似编辑距离,dp)

题干&#xff1a; 自从 Applese 学会了字符串之后&#xff0c;精通各种字符串算法&#xff0c;比如……判断一个字符串是不是回文串。 这样的题目未免让它觉得太无聊&#xff0c;于是它想到了一个新的问题。 如何判断一个字符串在任意位置(包括最前面和最后面)插入一个字符后…

【POJ - 2752】Seek the Name, Seek the Fame (KMP,公共前缀后缀长度及个数)

题干&#xff1a; The little cat is so famous, that many couples tramp over hill and dale to Byteland, and asked the little cat to give names to their newly-born babies. They seek the name, and at the same time seek the fame. In order to escape from such b…

编码方式_【每日一题】| 常见的编码方式之栅栏密码

CTF_密码学栅栏密码点击上方蓝字 发现更多精彩01简介栅栏密码(Rail-fence Cipher)就是把要加密的明文分成N个字一组&#xff0c;然后把每组的第1个字符组合&#xff0c;每组第2个字符组合…每组的第N(最后一个分组可能不足N个)个字符组合&#xff0c;最后把他们全部连接起来就是…

edp和edt哪个好_香水edp和edt是什么意思

香水adp和edt代表的是浓香水和淡香水&#xff0c;它们标识香水的持久度和浓度。每款香水都会给出这些相对应的参数。这些也代表的是水、酒精以及精油的比例。香水edp和edt是什么意思edp、edt以及parfum代表的都是香水的参数&#xff0c;edp和edt香水的浓度要稍微低一点&#xf…

【HDU - 3746 】Cyclic Nacklace (KMP,最小循环节问题)

题干&#xff1a; CC always becomes very depressed at the end of this month, he has checked his credit card yesterday, without any surprise, there are only 99.9 yuan left. he is too distressed and thinking about how to tide over the last days. Being inspir…

【POJ - 1961】Period(KMP,循环节问题)

题干&#xff1a; For each prefix of a given string S with N characters (each character has an ASCII code between 97 and 126, inclusive), we want to know whether the prefix is a periodic string. That is, for each i (2 < i < N) we want to know the lar…

linux tomcat守护_linux下非root用户运行tomcat

# 前言&#xff1a;为什么要使用非root用户运行tomcatroot用户启动tomcat有一个严重的问题&#xff0c;那就是tomcat具有root权限。这意味着你的任何一个页面脚本(html/js)都具有root权限&#xff0c;所以可以轻易地用页面脚本 修改整个硬盘里的文件&#xff01;所以最好不要使…

【牛客 - 331E】炫酷划线(权值线段树,树状数组哈希,随机数)

题干&#xff1a; 链接&#xff1a;https://ac.nowcoder.com/acm/contest/331/E 来源&#xff1a;牛客网 平面上有一个圆&#xff0c;圆环上按顺时针顺序分布着从1到n&#xff0c;一共n个点。 现在无聊的小希开始按某种顺序对其在圆内两两连线&#xff0c;小希尽量避免让两…

linux 判断网卡是否异常_如何判断linux网卡故障?

linux网卡的信息里错误和碰撞数值高是否说明网卡有问题还是网络有问题&#xff1f;如何判断网卡有没有问题&#xff1f;ifconfigeth0Linkencap:EthernetHWaddr52:51:AB:14:60:B8inetaddr:192.168.1.254Bcas...linux网卡的信息里错误和碰撞数值高是否说明网卡有问题还是网络有问…

autosar网络管理_AP AUTOSAR平台设计(11)——网络管理

点击蓝字右上角 关注置顶不迷路Hello&#xff01;大家好&#xff01;欢迎来到《搞一下汽车电子》本篇是AP AUTOSAR平台设计(11)——网络管理如果觉得不错&#xff0c;“转发” “ 在看”支持一下吧~1.网络管理算法概述AUTOSAR NM基于分散的网络管理策略&#xff0c;这意味…

【牛客 - 331D】炫酷路途(二进制枚举 或 建图方式+最短路 或 dfs)

题干&#xff1a; 小希现在要从寝室赶到机房&#xff0c;路途可以按距离分为N段&#xff0c;第i个和i1个是直接相连的&#xff0c;只需要一秒钟就可以相互到达。 炫酷的是&#xff0c;从第i个到第i2pi2p个也是直接相连的&#xff08;其中p为任意非负整数&#xff09;&#x…

mysql 子查询 as_mysql子查询

更多关于LeetCode习题总结请翻阅我的博客&#xff1a;LeetCode - mysql子查询【184. 部门工资最高的员工】子查询一、按查询结果分类&#xff1a;1.作为数据源使用&#xff1b;2.作为选择条件使用&#xff1b;二、按常见的子查询分类&#xff1a;1.由比较运算符引发的子查询&am…

【牛客 - 331G】炫酷数字(反素数打表 或 扩展埃式筛法,结论)

题干&#xff1a; 小希希望你构造一个最小的正整数&#xff0c;使得其有n个因子。 输入描述: 第一行一个整数T表示数据组数每组数据第一行输入一个正整数n&#xff0c;表示其因子数。n≤1,000,000n≤1,000,000T≤1,000,000T≤1,000,000输出描述: 输出一行一个整数&#xff…

【牛客 - 331J】炫酷数学(打表猜结论,按位枚举证明)

题干&#xff1a; 小希最近想知道一个东西&#xff0c;就是ABA|B(其中|为按位或)的二元组有多少个。 当然&#xff0c;直接做这个式子对小希来说太难了&#xff0c;所以小希改变了一些条件&#xff0c;她仅想知道其中A,B<NA,B<N的情况&#xff0c;其中N为2的幂次。 当然…

workerman mysql_workerman/mysql

Workerman/MySQL说明常驻内存的程序在使用mysql时经常会遇到mysql gone away的错误&#xff0c;这个是由于程序与mysql的连接长时间没有通讯&#xff0c;连接被mysql服务端踢掉导致。本数据库类可以解决这个问题&#xff0c;当发生mysql gone away错误时&#xff0c;会自动重试…

【LeetCode - 279】完全平方数(四平方和定理,数论,图论,dp)

题干&#xff1a; 给定正整数 n&#xff0c;找到若干个完全平方数&#xff08;比如 1, 4, 9, 16, ...&#xff09;使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 示例 1: 输入: n 12 输出: 3 解释: 12 4 4 4. 示例 2: 输入: n 13 输出: 2 解释: 13 …

C++中string类的length()与size()方法和C语言的strlen()函数有什么区别?

直接上代码段&#xff1a; char buf[256]{0}; buf[0]a; buf[2]v; buf[3]h;string strTest(buf,6); cout<<"strTest[0]:"<<(uint32_t)strTest[0]<<"_"<<(uint32_t)strTest[1]<<"_"<<(uint32_t)strTest[2]&l…

nutch mysql solr_Nutch2.1+mysql+solr3.6.1+中文网站抓取

1、mysql 数据库配置 linux mysql安装步骤省略。 创建数据库与表 [sql] view plaincopyprint? CREATE DATABASE nutch DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; CREATE TABLE webpage( id varchar (767) CHARACTER SET latin1 NOT N1、mysql 数据库配置l…

【计蒜客信息学模拟赛1月月赛 - D】Wish(dp计数,数位)

题干&#xff1a; 如果一个数大于等于 10且任意连续两位都是质数&#xff0c;那么就称之为 Wish 数。当然&#xff0c;第一个 Wish 数是 11。 比如 97&#xff0c;111&#xff0c;131&#xff0c;119 都是 Wish 数&#xff0c;而 12&#xff0c;136 则不是。 问第 N 个 Wish…