Knowledge is Power Gym - 102822K

题意:

给你一个数n,让你将n分解成一些互质的数,然后这些数的最大值减最小值要求最小,如果不行输出-1,否则输出最大值减最小值的最小情况

题解:

具体做法是通过枚举大量数据找到规律

  1. 如果n<=6,直接输出-1
  2. 如果n是奇数,n可以分解成n/2和n/2+1,必互质,答案为1
  3. 如果n是偶数,分多个情况
    A. n/2是偶数,可以分成n/2-1和n/2+1,必互质
    B. n/2是奇数,分情况:
    I. 如果n%3 = = 0,说明可以分成n/3-1,n/3,n/3+1,答案为3
    II.如果n%3 = = 1,说明可以分成(n-1)/3-1,(n-1)/3,(n-1)/3+2,如果互质答案为3,否则为4
    III.如果n%3 = = 2,说明可以分解成(n+1)/3-2,(n+1)/3,(n+1)/3+1,如果互质答案为3,否则为4

代码:

#include<bits/stdc++.h>using namespace std;int main() {int t, T = 1;scanf("%d", &t);while (t--) {int n;scanf("%d", &n);printf("Case #%d: ", T++);if (n & 1) printf("1\n");else if (n % 4 == 0) printf("2\n");else if (n == 6) printf("-1\n");else {if (n % 3 == 0) {printf("2\n");} else if (n % 3 == 1) {int a = (n - 1) / 3;int b = a - 1, c = a + 2;if ( __gcd(b, c) == 1) printf("3\n");else printf("4\n");} else if (n % 3 == 2) {int a = (n + 1) / 3;int b = a - 2, c = a + 1;if (__gcd(b, c) == 1) printf("3\n");else printf("4\n");}}}return 0;
}

Knowledge is Power Gym - 102822K相关推荐

  1. 2020CCPC绵阳K.Knowledge is Power(互质数分解)+两数互质规律总结

    题目链接:http://codeforces.com/gym/102822/problem/K 题意:将一个数字n分解成多个互质的数相加,求这些互质的数中最大值和最小值之间的差值,要求这个差值最小 两 ...

  2. movie起居类分类词汇

    2006-06-23 14:20:04 一. 起居类分类词汇 1.卧室 blanket 毛毯 cushion 垫子 quilt 被子 cotton terry blanket 毛巾被 feather ...

  3. 谈判如何在谈判中_工资谈判软件开发人员指南

    谈判如何在谈判中 The following is an excerpt from The Complete Software Developer's Career Guide by John Son ...

  4. [摘]四十二天学会英语的模范短文和经典100句

    第一天:THE NEWSPAPER 报 纸 Nowadays the newspaper possesses considerable value Everybody should read it. ...

  5. 四十二天学会英语的模范短文

    四十二天学会英语的模范短文 第一天:THE NEWSPAPER 报 纸 Nowadays the newspaper possesses considerable value Everybody sh ...

  6. English in 999

    1. I see. 我明白了. 2. I quit! 我不干了! 3. Let go! 放手! 4. Me too. 我也是. 5. My god! 天哪! 6. No way! 不行! 7. Com ...

  7. 英语文章、常用短语部分摘选集锦

    **=================文章====================** Touchy Topics 敏感话题 In North America when people meet eac ...

  8. [转] 背完这444句,你的口语绝对不成问题了

    1. I see. 我明白了. 2. I quit! 我不干了! 3. Let go! 放手! 4. Me too. 我也是. 5. My god! 天哪! 6. No way! 不行! 7. Com ...

  9. 444牛X的日常口语

    1. I see. 我明白了.  2. I quit! 我不干了!  3. Let go! 放手!  4. Me too. 我也是.  5. My god! 天哪!  6. No way! 不行!  ...

最新文章

  1. 公布硕士论文最新进展一(2007.3.6)
  2. 前端笔记-前端优化简要大总结
  3. java设计模式---备忘录模式
  4. Eclipse的正确安装使用姿势
  5. python中的类及self详解_Python类class参数self原理解析
  6. operamasks-ui2.0 +MVC4.0+EF5.0实战之一 开篇及布局控件介绍
  7. 编译hadoop的eclipse插件hadoop-eclipse-plugin-1.2.1.jar
  8. HEVC/H265 解码图表,请对照代码看。
  9. php做游戏登录服务器,游戏登陆服务器php简单实现
  10. Unknown system variable 'query_cache_size'
  11. ssh远程连接不上linux
  12. HADOOP基本操作命令,及其组件端口
  13. JavaScript 虚拟键盘 A-Keyboard
  14. android 图片可以滚动条,Android仿即刻首页垂直滚动图,炫酷到底!
  15. 云盘服务器被毁,360云盘宣布停止个人云盘服务 明年2月1日清空
  16. Linux九阴真经之大伏魔拳残卷5 nginx
  17. 前端实现文件上传(点击+拖拽)
  18. Arduino UNO驱动TM1637四位时钟数码管显示时间
  19. 用户不在 sudoers 文件中此事将被报告
  20. 《赵成的运维体系管理课》学习笔记(2)——持续交付

热门文章

  1. 每日一笑 | 为什么Python比Java更受欢迎?
  2. 前端又一本升级版图书上市了,听说比第一版还好看
  3. 干货|吴恩达Coursera课程教你学习神经网络二!
  4. idea 线程内存_Java线程池系列之-Java线程池底层源码分析系列(二)
  5. sv队列和动态数组的区别_Go 刷 LeetCode 系列:经典(7) 设计双端队列
  6. python 柱状图 间距_专题第18篇:Python 绘图入门
  7. hadoop安装hive及配置mysql_Hadoop系列之Hive(数据仓库)安装配置
  8. layui 如何去dom_javascript 怎么去引用layui里面的方法
  9. 22届腾讯暑期实习三轮面试面经(已oc)
  10. php用ajaxs上传图片_jquery+ajax+php 图片上传