Java | Leetcode Java题解之第552题学生出勤记录II

server/2024/11/14 14:58:38/

题目:

题解

class Solution {static final int MOD = 1000000007;public int checkRecord(int n) {long[][] mat = {{1, 1, 0, 1, 0, 0},{1, 0, 1, 1, 0, 0},{1, 0, 0, 1, 0, 0},{0, 0, 0, 1, 1, 0},{0, 0, 0, 1, 0, 1},{0, 0, 0, 1, 0, 0}};long[][] res = pow(mat, n);long sum = Arrays.stream(res[0]).sum();return (int) (sum % MOD);}public long[][] pow(long[][] mat, int n) {long[][] ret = {{1, 0, 0, 0, 0, 0}};while (n > 0) {if ((n & 1) == 1) {ret = multiply(ret, mat);}n >>= 1;mat = multiply(mat, mat);}return ret;}public long[][] multiply(long[][] a, long[][] b) {int rows = a.length, columns = b[0].length, temp = b.length;long[][] c = new long[rows][columns];for (int i = 0; i < rows; i++) {for (int j = 0; j < columns; j++) {for (int k = 0; k < temp; k++) {c[i][j] += a[i][k] * b[k][j];c[i][j] %= MOD;}}}return c;}
}

http://www.ppmy.cn/server/141889.html

相关文章

Flume学习

一、Flume概述 Flume最主要的作用就是&#xff0c;实时读取服务器本地磁盘的数据&#xff0c;将数据写入到HDFS。 二、Flume基础架构 三、Flume安装部署 配置Flume的前提是要配置好JDK和Hadoop 1.解压 [rootlxm148 soft]# tar -zxvf ./apache-flume-1.9.0-bin.tar.gz -C /…

知识图谱6:neo4j查询语句

neo4j增删改查 常见查询语句 1、查询所有节点和关系 //查询所有节点和关系 MATCH (n)-[r]->(m) RETURN n, r, m 2、查询某个知识图谱的全部 3、查询 MATCH (n:zhongyao {name: "艾虎"})-[r]->(m) RETURN n, r, m4、统计 // 查询边的个数 MATCH ()-[r]->…

05 SQL炼金术:深入探索与实战优化

文章目录 SQL炼金术&#xff1a;深入探索与实战优化一、SQL解析与执行计划1.1 获取执行计划1.2 解读执行计划 二、统计信息与执行上下文2.1 收集统计信息2.2 执行上下文 三、SQL优化工具与实战3.1 SQL Profile3.2 Hint3.3 Plan Baselines3.4 实战优化示例 SQL炼金术&#xff1a…

git相关知识

前言&#xff1a;在学习git之前首先需要了解几个概念&#xff1a;工作区&#xff0c;暂存区&#xff0c;版本库。 工作区&#xff1a;是电脑上写代码或者文件的目录。 暂存区&#xff1a;一般存放在.git目录下的index中&#xff0c;也称索引。&#xff08;git add&#xff09…

MISRA C2012学习笔记(9)-Rules 8.14

文章目录 8.14控制语句表达式规则14.1循环计数器本质上不能是浮点型Rule 14.2 for 循环应为良好格式Rule 14.3 控制表达式不得是值不变的Rule 14.4 if 语句和循环语句的控制表达式的基本类型应为布尔型 8.14控制语句表达式 本节中的一些规则使用了术语循环计数器。循环计数器需…

【代码管理之道】Git基础知识详解

引言 Git 是一款分布式版本控制系统&#xff0c;由 Linux 内核的创始人 Linus Torvalds 在 2005 年开发。它最初是为了更好地管理 Linux 内核源码而设计的。随着开源软件的蓬勃发展&#xff0c;Git 已经成为全球最流行的版本控制系统之一。本文将从 Git 的基本概念出发&#x…

软考之面向服务架构SOA

面向服务架构&#xff08;SOA&#xff09;与单体架构的比较 一、引言 在软件开发的历史进程中&#xff0c;架构设计一直是影响系统性能、可维护性和扩展性的关键因素。单体架构和面向服务架构&#xff08;Service-Oriented Architecture, SOA&#xff09;是两种常见的架构设计…

android dvr黑屏

问题现象&#xff1a;dvr拍摄的图片是黑的&#xff0c;没有buffer数据的。 查看相关的log文件发现&#xff1a; video surface 未释放导致 祥见一下报错信息&#xff1a; 38298 2024-10-16 01:02:51.855 4056 32068 W MediaCodecRenderer: java.lang.IllegalStateExcepti…