zoukankan      html  css  js  c++  java
  • hdu 5685

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=5685

    解题思路:前缀积+费马小定理求逆元。

    AC代码:

     1 #include<iostream>
     2 #include<stdio.h>
     3 #include<bits/stdc++.h>
     4 using namespace std;
     5 int MOD=9973;
     6 string s;
     7 int sum[100050];
     8 int quick_pow_mod(int a,int n){
     9     int ans=1;
    10     int base=a;
    11     while(n!=0){
    12         if(n&1){
    13             ans=(ans*base)%MOD;
    14         }
    15         base=(base*base)%MOD;
    16         n>>=1;
    17     }
    18     return ans%MOD;
    19 }
    20 int main(){
    21     int n;
    22     while(cin>>n){
    23         cin>>s;
    24         memset(sum,0,sizeof(sum));
    25         sum[0]=1;
    26         sum[1]=s[0]-28;
    27         for(int i=1;i<s.length();i++){
    28             sum[i+1]=(sum[i]*(s[i]-28))%MOD;
    29         }
    30         while(n--){
    31             int x,y;
    32             scanf("%d %d",&x,&y);
    33             cout<<(sum[y]*quick_pow_mod(sum[x-1],MOD-2))%MOD<<endl;
    34         }
    35     }
    36     return 0;
    37 }
  • 相关阅读:
    react脚手架
    快速创建一个node后台管理系统
    vue脚手架结构及vue-router路由配置
    Spring 事务管理-只记录xml部分
    Spring-aspectJ
    Maven 自定义Maven插件
    JVM
    JVM
    Spring
    Digester
  • 原文地址:https://www.cnblogs.com/ISGuXing/p/8798982.html
Copyright © 2011-2022 走看看