题意是给出一个数,找出这个数的三个因子且这三个因子的和等于这个数,输出满足条件的乘积最大的一组因子的乘积,如果不存在这样的因子,就输出 -1.

第一次 wa 了,因为把题目中的 x | n 当做了位或操作(其实这样那句话读不通...),其实是整除的意思。

分析:因为 n = n * 1

= n * (1/2 + 1/3 + 1/6) = n * (1/3 + 1/3 + 1/3) = n * (1/2 + 1/4 + 1/4)

所以若一个数可以被 2、3 整除

或可以被 3 整除

或可以被 4 整除

则所要求的一组因子是存在的。

而 2 和 3 这种情况包含在第二种情况中,那么只要这个数可以被 3 或 4 整除,所要求的一组因子就是存在的。

又因为第二种情况下三个因子的乘积为 1/27 * (n^3),第三种情况下三个因子的乘积为 1/32 * (n^3),第二种情况的结果大于第三种情况,则要优先考虑第二种情况。

代码如下:

          

 #include <bits/stdc++.h>
using namespace std;
long long n,ans;
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
scanf("%lld",&n);
ans = -;
if(n%==)
{
n = n/;
ans = n*n*n;
}
else if(n%==)
{
ans = n/*n/*n/;
}
printf("%lld\n",ans);
}
return ;
}

感谢这篇博客的作者:https://www.cnblogs.com/ZERO-/p/9364600.html

最新文章

  1. Oracle用户被锁原因及办法
  2. Angular2.0快速开始
  3. U-BOOT-Linux启动指令bootm分析
  4. swiftlint升级
  5. 使用yum安装CDH Hadoop集群
  6. jquery放大镜插件与样式
  7. SecureCRT使用教程
  8. Property &amp;#39;sqlSessionFactory&amp;#39; or &amp;#39;sqlSessionTemplate&amp;#39; are required
  9. 防盗链[referer]
  10. 【国家集训队2010】小Z的袜子[莫队算法]
  11. EJB通过注解方式注入并使用其他EJB或者服务、配置JBoss数据源
  12. C++之默认参数
  13. Sqoop: ERROR manager.SqlManager: Error reading from database: java.sql.SQLException:
  14. 【Codeforces Round 1137】Codeforces #545 (Div. 1)
  15. 保持APP后台NSTimer运行
  16. openresty router &amp;&amp; template 试用
  17. ORA-16038: log 3 sequence# 103 cannot be archived
  18. android.telephony.SmsManager.sendMultipartTextMessage
  19. Spring Boot 实用MyBatis做数据库操作
  20. MathExamLv2——周世元211606348,许燕婷211606338

热门文章

  1. WPF 精修篇 用户控件
  2. golang之引用自己定义的包
  3. JVM基础详解
  4. LeetCode 136:只出现一次的数字 Single Number
  5. IT兄弟连 Java语法教程 流程控制语句 控制循环结构2
  6. 解决root用户下都无权限操作的问题
  7. Alpine Linux 安装 lxml Pillow 失败
  8. 常用regex正则表达式
  9. 【LOJ#6682】梦中的数论(min_25筛)
  10. DB2 catalog 编目