import java.util.*; class Main{ public static void main(String[] args){ Scanner sc= new Scanner(System.in); int n = sc.nextInt(); int[] dp = new int[n+1]; dp[0] = 0; dp[1] = 1; for(int i = 2;i<n+1;++i){ dp[i] = i; } for(int i = 2;i<dp.length;++i){ for(int j = i/2;j>=1;--j){ if(i%j==0){ dp[i] = Math.min(dp[i],j+dp[i/j]); } } } System.out.println(dp[dp.length-1]); } } 简单dp

相关推荐

不愿透露姓名的神秘牛友
11-20 19:57
已编辑
某大厂 golang工程师 23.0k*16.0, 2k房补,年终大概率能拿到
点赞 评论 收藏
分享
09-29 17:44
已编辑
蔚来_测(准入职员工)
//鲨鱼辣椒:见不了了我实习了四个月上周再投筛选了一天就给我挂了
点赞 评论 收藏
分享
牛客网
牛客企业服务