news 2026/2/28 12:28:44

数论|欧拉定理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数论|欧拉定理

lc

lc3463

对数字字符串重复执行“相邻数字和模10替换原字符”的操作,直到只剩两个数字,判断这两个数字是否相同。

解法:

预处理阶乘、逆元及因子2和5的计数,用组合数计算字符串相邻字符差值的加权和

判断其模10是否为0,以此验证字符串是否符合特定数字特征

const int MOD = 10;

const int MX = 100'000;

array<int, MX + 1> f, inv_f, p2, p5;

int qpow(int x, int n) {

int res = 1;

while (n > 0) {

if (n % 2 > 0) {

res = res * x % MOD;

}

x = x * x % MOD;

n /= 2;

}

return res;

}

auto init = []() {

f[0] = inv_f[0] = 1;

for (int i = 1; i <= MX; i++) {

int x = i;

// 计算 2 的幂次

int e2 = countr_zero((unsigned) x);

x >>= e2;

// 计算 5 的幂次

int e5 = 0;

while (x % 5 == 0) {

e5++;

x /= 5;

}

f[i] = f[i - 1] * x % MOD;

inv_f[i] = qpow(f[i], 3); // 欧拉定理求逆元

p2[i] = p2[i - 1] + e2;

p5[i] = p5[i - 1] + e5;

}

return 0;

}();

int comb(int n, int k) {

// 由于每项都 < 10,所以无需中途取模

return f[n] * inv_f[k] * inv_f[n - k] *

qpow(2, p2[n] - p2[k] - p2[n - k]) *

qpow(5, p5[n] - p5[k] - p5[n - k]) % MOD;

}

class Solution {

public:

bool hasSameDigits(string s) {

int diff = 0;

for (int i = 0; i + 1 < s.size(); i++) {

diff += comb(s.size() - 2, i) * (s[i] - s[i + 1]);

}

return diff % MOD == 0;

}

};

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/21 18:32:52

SpringBoot3+JDK17打包成加密EXE

最近有一个springweb项目&#xff0c;需要放到客户端&#xff0c;但是又不想让一些人破解反编译jar包&#xff0c;于是我将项目打包成加密exe&#xff0c;让一些人无法简单破解。本文就是介绍详细的配置步骤。 一. pom.xml配置 首先需要配置maven pom文件&#xff1a; <?…

作者头像 李华
网站建设 2026/2/19 14:34:41

中文文本情感分析:StructBERT模型原理与应用

中文文本情感分析&#xff1a;StructBERT模型原理与应用 1. 引言&#xff1a;中文情感分析的技术价值与挑战 在当今信息爆炸的时代&#xff0c;用户每天在社交媒体、电商平台、新闻评论区等场景中产生海量的中文文本数据。如何从这些非结构化文本中自动识别情绪倾向&#xff…

作者头像 李华
网站建设 2026/2/20 20:19:27

基于PLC的智能农业温室大棚控制系统设计(源码+万字报告+讲解)(支持资料、图片参考_相关定制)

摘 要 温室技术具有合理利用农业资源、保护生态环境、提高农产品产量及在国际市场竞争力等优势&#xff0c;已成为当前国际前沿性研究领域。如何利用自动控制系统有效地提高温室环境控制水平和现代化管理程度&#xff0c;是温室技术研究的重要课题之一。随着过程控制技术、通讯…

作者头像 李华
网站建设 2026/2/28 10:22:55

AI智能体多模型对比:云端GPU 3小时全跑完,成本3块

AI智能体多模型对比&#xff1a;云端GPU 3小时全跑完&#xff0c;成本3块 引言&#xff1a;为什么需要多模型对比测试&#xff1f; 当技术选型委员会需要评估多个AI智能体框架时&#xff0c;传统方式往往需要准备多台服务器&#xff0c;分别部署不同的框架进行测试。这种方式…

作者头像 李华
网站建设 2026/2/8 17:23:44

StructBERT情感分析API开发实战:5分钟集成到你的应用

StructBERT情感分析API开发实战&#xff1a;5分钟集成到你的应用 1. 引言&#xff1a;中文情感分析的现实需求 在当今数字化时代&#xff0c;用户生成内容&#xff08;UGC&#xff09;呈爆炸式增长&#xff0c;从电商平台评论、社交媒体发言到客服对话记录&#xff0c;海量中…

作者头像 李华
网站建设 2026/2/24 8:39:57

中文情感分析WebUI开发:StructBERT详细教程

中文情感分析WebUI开发&#xff1a;StructBERT详细教程 1. 章节概述 随着自然语言处理技术的不断演进&#xff0c;中文情感分析在客服系统、舆情监控、用户评论挖掘等场景中发挥着越来越重要的作用。本文将围绕 StructBERT 模型&#xff0c;详细介绍如何构建一个轻量级、可交…

作者头像 李华