算法(超级次方)
请听题:
你的任务是计算 a**b 对 1337 取模,a 是一个正整数,b 是一个非常大的正整数且会以数组形式给出。
示例 1:
输入: a = 2, b = [3]
输出: 8
示例 2:
输入: a = 2, b = [1,0]
输出: 1024
请开始你的表演:
class Solution {
public int superPow(int a, int[] b) {
}
}
本人:这太简单了吧,循环不就可以了么!!!
class Solution {
public int superPow(int a, int[] b) {
String text = "";
for(int i : b) {
text += i;
}
int math =Integer.parseInt(text);
int result = 1;
for (int i = 0; i < math; i++) {
result = result*a;
}
return result;
}
}
天真啊!!!!
执行结果:执行出错 显示详情
java.lang.NumberFormatException: For input string: "1774317014492850093125960990960537988982541938059561189378585530431541796889806783111068116691856900171772854452965081095876061872981079476923139968089777395574983012150844389375394493324893382813228425063090541180425824275476908961477978144364526011538098800616965874899247799522697798598550358957346462352314593364133200447233987855083414095544977418752497917892411764365021439200298457358239591889237041187027346103858984835114259053174896723553969957352995510638055656451706394491347758209273090777412513364825950825648887318505248511079651266470956937888658385458575732871718733629339315155812789254542613606961014045582263434389