林大oj1276 感谢冯学长的指点

题目地址:https://acm.nefu.edu.cn/JudgeOnline/problemShow.php?problem_id=1276
本题思路是:先积分成等比数列,利用等比数列性质求和,再求导还原。
用到了 —— 费马小定理、快速幂、快速乘(防止直接乘爆longlong,用加代替乘,边加边取模)、大数字符读入处理、还有逆元。

经过积分 求和 再求导 得到为
(n-1)[(b+1)nb-(a+1)na]-(nb+1-na+1)
———————————————%mod
       (n-1)2

注意:(b+1) (a+1)需要对mod取模
而根据费马小定理nb na na+1 nb+1 中的a b需要对mod-1取模(巨坑 wrong了好几次)

#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#define mod 10000000033
using namespace std;///
long long cheng(long long m,long long n)///暂且命名为快速乘模板(可以防止直接乘爆longlong)
{//对mod取模 m=m%mod;n=n%mod;long long b=0;while(n>0){if(n&1)b=(b+m)%mod;n=n>>1;m=(m+m)%mod;}//printf("%lld\n",mod);return b;
}
long long cheng1(long long m,long long n)///暂且命名为快速乘模板(可以防止直接乘爆longlong)
{///对mod-1取模 —费马小定理  n^b^ n^a^ n^a+1^ n^b+1^  中的a b需要对mod-1取模m=m%(mod-1);n=n%(mod-1);long long b=0;while(n>0){if(n&1)b=(b+m)%(mod-1);n=n>>1;m=(m+m)%(mod-1);}//printf("%lld\n",mod);return b;
}
long long quick(long long m,long long n)///快速幂
{long long b=1;while(n>0){if(n&1)b=cheng(b,m)%mod;n=n>>1;m=(cheng(m,m))%mod;}//printf("%lld\n",mod);return b%mod;
}
char ax[25],bx[25];
int main()
{long long t,n,a1,a2,ans,x1,x2,x3,x4,x5;long long aa,aaa,bb,bbb,x,l1,l2,i;scanf("%lld",&t);while(t--){scanf("%s%s%lld",ax,bx,&n);// printf("%s\n%s\n",ax,bx);l1=strlen(ax);l2=strlen(bx);aa=aaa=bbb=bb=0;for(i=0;i<l1;i++){x=ax[i]-'0';aa=(aa*10+x)%(mod-1);//n^b^ n^a^ n^a+1^ n^b+1^  中的a b需要对mod-1取模aaa=(aaa*10+x)%mod;///(b+1) (a+1)需要对mod取模}for(i=0;i<l2;i++){x=bx[i]-'0';bb=(bb*10+x)%(mod-1);//n^b^ n^a^ n^a+1^ n^b+1^  中的a b需要对mod-1取模bbb=(bbb*10+x)%mod;///(b+1) (a+1)需要对mod取模}n=n%mod;//printf("%lld  %lld\n",a,b);if(n==1){x=quick(2,mod-2);///除于2    对2取逆元ans=cheng(aaa+1+bbb,bbb-aaa);ans=cheng(ans,x);printf("%lld\n",ans%mod);continue;}else{if(n==0){printf("0\n");continue;}else{a1=quick(n,aa)%mod;a2=quick(n,bb)%mod;//Ex_gcd(n-1,mod,x,y);x1=cheng(bbb+1,a2);x1=cheng(x1,n-1);x2=cheng(aaa+1,a1);x2=cheng(x2,n-1);x3=cheng(a2,n);x4=cheng(a1,n);x5=cheng(n-1,n-1);x5=quick(x5,mod-2);ans=(x1-x2+mod-x3+x4+mod)%mod;ans=cheng(ans,x5);printf("%lld\n",ans%mod);}}}return 0;
}

有问题可以评论区问我

(林大oj1276)相关推荐

  1. 北京林大计算机科技应为abc哪类,北京林业大学新生入学要准备什么?

    满意答案 楼上回答得已经很好了,我也是广西的,是你们的师兄,我来补充一下: 新生入学都有学长学姐带着办理各项手续,基本都不用你操心(等到你大二了,也要帮助新同学哦!) 在规定时间来北京,在火车站是有校 ...

  2. 安工大2020计算机调剂,2020考研最新调剂信息,安大、安工大、东北林大211等高校调剂信息...

    原标题:2020考研最新调剂信息,安大.安工大.东北林大211等高校调剂信息 最新调剂信息更新. 小编将所有调剂信息都汇总到公众号里面了,方便大家查询信息. 查询方法:点击公众号进入选择调剂信息即可. ...

  3. 2018年又传喜报!热烈祝贺王家林大师大数据经典著作《Spark SQL大数据实例开发教程》 畅销书籍 出版上市!

    2018年又传喜报!热烈祝贺王家林大师大数据经典著作<Spark SQL大数据实例开发教程> 畅销书籍 出版上市! 作者: 王家林 段智华  条码书号:9787111591979 出版日期 ...

  4. 2020年2月12日 林大OJ习题 队列

    2020年2月12日 队列 林大OJ 1632 周末舞会-队列 队列的基本题目,重在理解队列的原理. #include <bits/stdc++.h>using namespace std ...

  5. 东北林大计算机考研难吗,一位考取东北林大信息学院农业信息化学姐的考研经验分享...

    [写在前面]考研一路走来,说实话很累,不累的话说明我没有认真努力过.有人说,考取东北林业大学研究生很好考,不怎么复习就可以考上,很简单的事.经历了东北林业大学2012年考研的人都知道:东北林业大学已经 ...

  6. 林大计算机学子第一篇博客

    林大计算机学子第一篇博客 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页.如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下 ...

  7. 林大ACM培训心得day4

    林大ACM培训心得day4 学会用笔计算解题 一.最大公约数(gcd) 求最大公约数有三种办法 1.暴力枚举法,代码如下: int a,b;int gcd=0; cin>>a>> ...

  8. 林大ACM培训day3心得

    林大ACM培训day3心得 没啥心得放道例题吧 丑数 #include <bits/stdc++.h> #define min4(a,b,c,d) min(min(a,b),min(c,d ...

  9. 林大ACM培训day2心得

    林大ACM培训day2心得 排序 1.sort函数: 2.排序规则: 3.遇到数多但是小的情况,可考虑采用桶排序来排序计算.如问题1650没必要的排序2: 排序 1.sort函数: 函数有三个参数-- ...

最新文章

  1. idea 执行java maven,IDEA的run maven方式启动步骤详解
  2. PC处理器装机中的认识 三
  3. tomcat(10)安全性
  4. [react-router] React-Router的<Link>标签和<a>标签有什么区别
  5. 45请求转发和请求重定向区别
  6. 1.3亿豪宅被拆 抱头痛哭的房主,真实身份竟是保健品大佬,曾涉嫌传销...
  7. 校招刷题---java选择题笔记01
  8. 【Java】字符串String操作
  9. python与c 交互原理_PYTHON 与C相互交互调用实例解析
  10. qtreeview 点击二级节点弹出dialog_2019二级造价师开卷考?一顿操作猛如虎,一看分数59...
  11. 变频器按启动没反应_ABB变频器启动无反应维修那些事
  12. 西游记中孙悟空被唐僧赶走的三回
  13. weui UI库适用范围
  14. xcode证书及打包
  15. matlab simulink 单相可调交流电源设计
  16. Java中使用HSSFWorkbook POI导出下载excel文件
  17. 砸金蛋java代码_java实现砸金蛋抽奖功能
  18. 城镇建设适宜性评价之灾害评价算法
  19. 模拟模拟交易系统(二)——系统设计
  20. CSS第三章:13.布局:如何进行网页的经典布局,使用何种标签?让块元素从左到右自然排列如何设置?

热门文章

  1. 服务器蓝屏显示7f,困扰多日的7F蓝屏
  2. 【数理逻辑】谓词逻辑 ( 一阶谓词逻辑公式 | 示例 )
  3. J2ME开发环境搭建 之 Sun WTK(转)
  4. 生活不像电影,生活比电影难多了
  5. H5混合开发二维码扫描教程之大圣众娱十人牛牛源码搭建架设
  6. 【Oracle 故障处理一则】 ORA-600 - 13013处理过程
  7. 回首2021,展望2022
  8. lssvm聚类研究(Matlab代码实现)
  9. VS插件(VSIX获取解决方案和项目信息)
  10. 1080P、720P、4CIF、CIF所需要的理论带宽和工程中实际带宽及存储容量