P1405 苦恼的小明

题目描述

黄小明和他的合伙人想要创办一所英语培训机构,注册的时候要填一张个人情况的表格,在身高一栏小明犯了愁。

身高要求精确到厘米,但小明实在太高了,无法在纸上填下这么长的数字。小明花钱买通了办事人员,于是只要写上他的身高模10007的结果就行了。

可小明不会取模,想起前几天请你帮他解决了水库的问题,于是又来找你帮忙。

输入输出格式

输入格式:

输入:(hehe.in)

小明的身高用A1^A2^...^An表示,第一行输入n,第二行输入n个正整数表示A1至An。

输出格式:

输出:(hehe.out)

一个数字表示小明身高mod 10007的值。

数据范围:

所有的0<=Ai<10000

第1~6数据点满足n=2

第7~10数据点满足n=3

第11个数据点满足n=1234567

(前六个数据会逐渐变大,照顾一下取模没弄清楚的同学。另外没有必要尝试对a1进行0或1的判断来骗分,估计是骗不到的。当然了,如果自认为运气好的人可以试试看,我

输入输出样例

输入样例#1: 复制

2
17 747
输出样例#1: 复制

173

说明

数据范围:

所有的0<=Ai<10000

第1~6数据点满足n=2

第7~10数据点满足n=3

第11个数据点满足n=1234567

(前六个数据会逐渐变大,照顾一下取模没弄清楚的同学。另外没有必要尝试对a1进行0或1的判断来骗分,估计是骗不到的。当然了,如果自认为运气好的人可以试试看,我也阻止不了你。)

(a^b)mod m=(a^(b%phi(m)))mod m

54分

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 1300000
#define mod 10007
using namespace std;
int n,m,a[N],ans;
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return x*f;
}
int phi(int x)
{
    int sum=x;
    ==)
    {
        ==) x/=;
        sum/=;
    }
    ;i*i<=x;i++)
     )
     {
         ) x/=i;
         sum=sum/i*(i-);
     }
    );
    return sum;
}
int qpow(int a,int b,int p)
{
    ;
    while(b)
    {
        ) res=1ll*res*a%p;
        a=1ll*a*a%p,b>>=;
    }return res;
}
int main()
{
    n=read();m=phi(mod);
    ;i<=n;i++)
     a[i]=read();ans=a[];
    ;i<=n;i++)
     ans=qpow(ans,a[i]%  ,mod);
    printf("%d",ans);
    ;
}

54分

#include<cstdio>
#include<algorithm>
#include<cstdlib>
#include<cstring>
#include<iostream>
using namespace std;
;
;
];
int phi[NN],vis[NN],prime[NN];
int ans,tot,n;
int gphi(){//这是个欧拉函数
    phi[]=;
    ;i<=NN;i++){
        if(!vis[i]){
            prime[++tot]=i;
            phi[i]=i-;
        }
        ;j<=tot;j++){
            if(i*prime[j]>NN)break;
            vis[i*prime[j]]=;
            ){
                phi[i*prime[j]]=phi[i]*prime[j];
            }
            else{
                phi[i*prime[j]]=phi[i]*(prime[j]-);
            }
        }
    }
}
int qpow(int a,int k,int p){//quick pow 水
    );
    ,p)%p;
    t=(t*t)%p;
    )t=(t*a)%p;
    return t;
}
int modex(int k,int x){//a^b mod m=a^(b mod phi(m)) mod m
    if(x==n)return a[x]%k;
    );
    int tt=qpow(a[x],kt,k);
    //cout<<a[x]<<' '<<kt<<' '<<k<<' '<<tt<<endl;
    return tt;
}
int main(){
    gphi();
    scanf("%d",&n);
    ;i<=n;i++)scanf("%d",&a[i]);
    ans=modex(pp,);
    printf("%d",ans);//好神奇竟然过了
    ;
}

洛谷——P1405 苦恼的小明的更多相关文章

  1. 洛谷 P1405 苦恼的小明

    P1405 苦恼的小明 题目描述 黄小明和他的合伙人想要创办一所英语培训机构,注册的时候要填一张个人情况的表格,在身高一栏小明犯了愁. 身高要求精确到厘米,但小明实在太高了,无法在纸上填下这么长的数字 ...

  2. luogu P1405 苦恼的小明(欧拉定理)

    题意 求a1^a2^a3^...^an(mod10007)n<=1000000,a[i]<=10000 题解 明眼人一眼就可以看出是欧拉定理的推论. 首先这个题是错的,没说保证互质. 然而 ...

  3. 洛谷 P3951 NOIP 2017 小凯的疑惑

    洛谷 P3951 NOIP 2017 小凯的疑惑 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付 ...

  4. 【洛谷2304_LOJ2134】[NOI2015]小园丁与老司机(动态规划_网络流)

    题目: 洛谷 2304 LOJ 2134 (LOJ 上每个测试点有部分分) 写了快一天 -- 好菜啊 分析: 毒瘤二合一题 -- 注意本题(及本文)使用 \(x\) 向右,\(y\) 向上的「数学坐标 ...

  5. 洛谷 P2709 BZOJ 3781 小B的询问

    题目描述 小B有一个序列,包含N个1~K之间的整数.他一共有M个询问,每个询问给定一个区间[L..R],求$\sum_1^Kc_i^2$的值,其中$c_i$表示数字i在[L..R]中的重复次数.小B请 ...

  6. 不失一般性和快捷性地判定决策单调(洛谷P1912 [NOI2009]诗人小G)(动态规划,决策单调性,单调队列)

    洛谷题目传送门 闲话 看完洛谷larryzhong巨佬的题解,蒟蒻一脸懵逼 如果哪年NOI(放心我这样的蒟蒻是去不了的)又来个决策单调性优化DP,那蒟蒻是不是会看都看不出来直接爆\(0\)?! 还是要 ...

  7. [洛谷P3697]开心派对小火车

    题目:洛谷P3697 题目大意是有各站停列车(慢车,相邻2站时间A)和特急列车(相邻2站时间B),特急列车在特定站点停靠. 现在加一种快速列车(相邻2站时间C,A>C>B),停靠K站(包括 ...

  8. 【洛谷P4251】[SCOI2015]小凸玩矩阵(二分+二分图匹配)

    洛谷 题意: 给出一个\(n*m\)的矩阵\(A\).现要从中选出\(n\)个数,任意两个数不能在同一行或者同一列. 现在问选出的\(n\)个数中第\(k\)大的数的最小值是多少. 思路: 显然二分一 ...

  9. [洛谷201704R1]开心派对小火车

    OJ题号:洛谷P3697 思路: 贪心.首先从起点出发,开特急电车,对于每一个特急车站$s_{i}$,分别下一次车,计算从当前车站$s_{i}$出发坐各停电车在指定时限内$t$最远能够到达的车站$r_ ...

随机推荐

  1. [洛谷P1536]村村通

    题意:多组数据,当n为0时结束,每组数据表示有n个村子,m条路,求还需要建多少条路,使得所有的村子联通题解:用并查集求出有多少个联通块,然后求解 C++ Code: #include<cstdi ...

  2. JavaScript的lazyload延迟加载是如何实现的

    懒加载技术(简称lazyload)并不是新技术, 它是js程序员对网页性能优化的一种方案.lazyload的核心是按需加载.在大型网站中都有lazyload的身影,例如谷歌的图片搜索页,迅雷首页,淘宝 ...

  3. 用JavaScript实现一个简单的树结构

    数据源用数组混json结构,实现了基本的功能.效率一般,跟 dhtree 梅花雪树对比了下,都差不多. (ps感觉比dhtree快点,跟梅花雪树差不多,个人测试) 这个实现树的原理是根据json,不断 ...

  4. 自己模拟实现一下Google的赛马Doodle

    今天的Google Doodle是个动态的,是一个骑马的动态Doodle,是谷歌纪念英国实验摄影师埃德沃德·迈布里奇182周年诞辰,埃德沃德·迈布里奇是运动摄影的开创者,所以谷歌涂鸦以一个运动的摄影作 ...

  5. 如何快速的进行sql脚本升级

    sql脚本升级即从一个老的脚本升级到一个新的全量的脚本.比如公司有某一个项目,有的客户已经用这个项目了,数据库里面去掉以前的初始化数据外,现在还有了客户自己的数据.但是这个版本中有严重的bug,所以为 ...

  6. egrep对于conf文件中去掉#注释,排除无用项

    [root@localhost conf]# egrep -v "#|^$" nginx.conf.default > nginx.conf dd

  7. Grep basic and practice

    定义:Grep (Globally search for the reqular expression and print out the line). 好处:Grep 在执行时不需要先调用编辑程序, ...

  8. oracle查看字符集和修改字符集

    oracle查看字符集和修改字符集 : 查看数据库服务器的字符集: select userenv('language') from dual ; 登陆用dba: 停掉数据库 : shutdown im ...

  9. java消息中间件入门

    消息中间件来解耦服务调用 比如1个登录系统,登录的话需要调用很多系统的其他服务,如果中间调用失败,可能会导致登录信息一致无法返回,同时也增加了系统的耦合度.而用消息中间件的话,则是不发送服务到其他系统 ...

  10. 动态规划:DAG-嵌套矩形

    据说DAG是动态规划的基础,想一想还真的是这样的,动态规划的所有状态和转移都可以归约成DAG DAG有两个典型模型,一个是嵌套矩形问题一个是硬币问题,这里仅介绍一个嵌套矩形问题 等二轮复习的时候再补上 ...