E-牛牛小数点_牛客练习赛89(数学)

简介: 笔记

E-牛牛小数点_牛客练习赛89 (nowcoder.com)


题目描述

牛牛想和点点交朋友, 于是点点给了牛牛一个问题0.png


数据范围

1 ⩽ T ⩽ 100 , 1 ⩽ l ⩽ r ⩽ 1 0 15


思路

130.png


证明


140.png150.png


代码

#include<bits/stdc++.h>
#include<unordered_map>
#define int long long
#define INF 0x3f3f3f3f
#define INFL 0x3f3f3f3f3f3f3f3f
#define mod 1000000007
#define MOD 998244353
#define rep(i, st, ed) for (int (i) = (st); (i) <= (ed);++(i))
#define pre(i, ed, st) for (int (i) = (ed); (i) >= (st);--(i))
#define debug(x,y) cerr << (x) << " == " << (y) << endl;
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
typedef pair<int, int> PII;
template<typename T> inline T gcd(T a, T b) { return b ? gcd(b, a % b) : a; }
template<typename T> inline T lowbit(T x) { return x & -x; }
//template<typename T> T qmi(T a, T b = mod - 2, T p = mod) { T res = 1; b %= (p - 1 == 0 ? p : p - 1); while (b) { if (b & 1) { res = (LL)res * a % p; }b >>= 1; a = (LL)a * a % p; }return res % mod; }
const int N = 1e5 + 10;
int qmi(int a, int b) {
  int res = 1;
  while (b) {
    if (b & 1)res = (res * a);
    b >>= 1;
    a = (a * a);
  }
  return res;
}
int cal(int r) {
  int res = 0;
  int t2 = log(r) / log(2ll);
  for (int i = 0; i <= t2; ++i) {
    for (int j = 0; qmi(5ll, j) * qmi(2ll, i) <= r; ++j) {
      //debug("i", i);
      //debug("j", j);
      int x = r / (qmi(2ll, i) * qmi(5ll, j));
      x = ((x - x / 2ll - x / 5ll + x / 10ll - 1ll) + MOD) % MOD;
      res = (res + (max(i, j) + 1ll) * x % MOD) % MOD;
    }
  }
  return res % MOD;
}
void solve() {
  int l, r; scanf("%lld%lld", &l, &r);
  cout << (cal(r) - cal(l - 1) + MOD) % MOD << endl;
}
signed main() {
  int _; cin >> _;
  while (_--)
    solve();
  return 0;
}


目录
相关文章
|
Java Serverless
Serverless 实战 —— 快速搭建 SpringBoot 应用
前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。
14249 0
|
1月前
|
JavaScript Java 关系型数据库
基于springboot的非遗传承宣传平台
本项目基于SpringBoot、Vue、MySQL等技术,构建非遗传承宣传平台,实现非遗资源的数字化存储与传播。通过图文、视频、互动社区等形式,打破时空限制,提升公众参与度,助力传统文化保护与传承。
|
4月前
|
JSON 前端开发 Java
Java新手指南:如何在Spring MVC中处理请求参数
处理Spring MVC中的请求参数是通过控制器方法中的注解来完成的。这些注解包括 `@RequestParam`, `@PathVariable`, `@ModelAttribute`, `@RequestBody`, `@RequestHeader`, `@Valid`, 和 `@RequestMapping`。使用这些注解可以轻松从HTTP请求中提取所需信息,例如URL参数、表单数据或者JSON请求体,并将其转换成Java对象以供进一步处理。
471 17
|
6月前
|
移动开发 JavaScript 前端开发
《抉择与权衡:Vue技术栈下uni-app与Taro的跨端较量》
在Vue技术栈为主的团队中,选择跨端开发框架时,uni-app与Taro各有优势。uni-app基于Vue.js,语法熟悉度高,开发效率快,HBuilderX工具支持强,跨端覆盖广(iOS、Android、Web及多小程序平台),性能优化特性丰富,生态插件完善。而Taro虽支持Vue语法,但核心仍带React风格,需适应新思维,其性能在React Native和H5上表现突出,适合对这些平台有高性能需求的项目。团队应根据开发效率、跨端需求及性能要求权衡选择。
418 30
|
6月前
|
人工智能 搜索推荐 定位技术
让兵马俑“活”过来——增强现实正在悄悄改变我们的旅游体验
让兵马俑“活”过来——增强现实正在悄悄改变我们的旅游体验
224 11
|
9月前
|
机器学习/深度学习 人工智能 自然语言处理
DynamicCity:上海AI Lab开源4D场景神器助力自动驾驶场景!128帧动态LiDAR生成,1:1还原城市早晚高峰
DynamicCity 是上海 AI Lab 推出的 4D 动态场景生成框架,专注于生成具有语义信息的大规模动态 LiDAR 场景,适用于自动驾驶、机器人导航和交通流量分析等多种应用场景。
251 1
|
10月前
|
Cloud Native 安全 Serverless
Serverless 应用引擎 SAE:让应用管理如此简单
本次课程由阿里云智能集团高级技术专家赵庆杰分享,主题为“Serverless 应用引擎 SAE:让应用管理如此简单”。课程涵盖四个主要部分:降本增效、功能场景、关键技术与客户案例。SAE 引擎通过按量付费、弹性伸缩等特性简化应用管理,帮助企业将更多精力投入到 AI 应用和业务价值上。SAE 提供了低门槛微服务架构转型、应用快速上云、一键启停环境、高可用方案及 CI/CD 解决方案等功能。此外,还介绍了高等教育出版社使用 SAE 进行云原生改造的案例,展示了其在降本增效、提升研发效能和安全性方面的显著成果。
305 9
|
11月前
|
机器学习/深度学习 分布式计算 TensorFlow
《TensorFlow 的基本概念和使用场景》
TensorFlow是由Google开发的开源机器学习框架,支持灵活构建与训练各类模型。其核心概念包括张量、计算图、变量和会话,广泛应用于机器学习、数据处理、分布式计算及模型部署等领域,具备高效计算与部署能力。
286 1
|
小程序 Java Go
用golang实现一个小程序商城后台系统(moshopserver)
用golang实现一个小程序商城后台系统(moshopserver) golang和c/c++比起来是一门新的语言,一直想学,网上搜集了一些资料,有些人说很容易上手,确实是这样,和C/C++比起来,少了很多乱七八糟的语法。
3415 0
用golang实现一个小程序商城后台系统(moshopserver)