100155. 双模幂运算 --力扣 --JAVA
2023-12-14 12:54:37
题目
给你一个下标从?0?开始的二维数组?
variables
?,其中?variables[i] = [ai, bi, ci, mi]
,以及一个整数?target
?。如果满足以下公式,则下标?
i
?是?好下标:
0 <= i < variables.length
((aibi % 10)ci) % mi == target
返回一个由?好下标?组成的数组,顺序不限?。
解题思路
- 循环遍历根据题目获取所需要的每个值;
- 幂次方后再取余等于先取余再进行幂次方;
- 将最后结果与target进行对比获取合适的索引。
代码展示
class Solution {
public List<Integer> getGoodIndices(int[][] variables, int target) {
List<Integer> ans = new ArrayList<>();
int n = variables.length;
for(int i = 0; i < n; i++){
int a = variables[i][0];
int b = variables[i][1];
int c = variables[i][2];
int m = variables[i][3];
a = a % 10;
int val1 = 1;
for (int j = 0; j < b; j++){
val1 = val1 * a % 10;
}
val1 = val1 % m;
int val2 = 1;
for (int j = 0; j < c; j++){
val2 = val2 * val1 % m;
}
if(val2 == target){
ans.add(i);
}
}
return ans;
}
}
文章来源:https://blog.csdn.net/qq_45794129/article/details/134914176
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!