n = int(raw_input())
resultDict={}
for i in range(1, n+1):
for j in range(1, n+1):
temp = i**j
if temp in resultDict:
resultDict[temp]+=1
else:
resultDict[temp] = 1
result=0
for _,v in resultDict.iteritems():
result+=v+v*(v-1)
print result%1000000007 暴力O(n^2),过40
public class Test {public static final int f = 1000000007;public static int num(int n){ if(n==1) return 1; return (num(n-1)+4n-3+sub1(n)+sub2(n))%f;}private static int sub1(int n){ int r=0; for(int i=2;i<=n/2;i++){ if(n%2==0){ int m = (int)Math.pow(n, 1.0/i) - 1; if(m>0) r += 2m; } } return r;}private static int sub2(int n){ int r=0; int le = (int)(Math.log(n)/Math.log(2)); for(int i=2;i<le;i++){ double d = Math.pow(n, 1.0/i); if(d-(int)d<0.000000001){ int m = (n-1)/i; r += 2*m; } } return r;}}
程序员小白条:建议换下项目,智能 AI 旅游推荐平台:https://github.com/luoye6/vue3_tourism_frontend
智能 AI 校园二手交易平台:https://github.com/luoye6/vue3_trade_frontend
GPT 智能图书馆:https://github.com/luoye6/Vue_BookManageSystem
选项目要选自己能掌握的,然后最好能自己拓展的,分布式这种尽量别去写,不然你只能背八股文了,另外实习的话要多投,尤其是学历不利的情况下,多找几段实习,最好公司title大一点的