第十二届蓝桥杯省赛C++/JavaB组试题H

暴力枚举,TLE,过了7个样例,大概能拿到 50%~70% 的分数。

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);long n = sc.nextLong();for (long i = 1; i <= n; i++) {// 将这个数开根号之后转为整形 砍掉后面的小数位 判断是否等于这个数字if ((long) Math.sqrt(i * n) * (long) Math.sqrt(i * n) == i * n) {System.out.println(i);return;}}}
}

正解:其实本题的考点就是分解质因数,n⋅x=m2n·x=m^2n⋅x=m2,nnn 最小乘上多少,可以使得 nnn 里面质因子的次数变为偶数;
n=P1α1×P2α2×...×Pnαnn=P_1^{α1}×P_2^{α2}×...×P_n^{αn}n=P1α1​×P2α2​×...×Pnαn​,如果某项质因子的次数 αiα_iαi​ 是奇数,那我们就至少乘上这一个质因子,所以这道题就是把 nnn 分解质因数,看一下它所有项的次数,把所有次数是奇数的质因子乘起来,就是答案。

时间复杂度 O(N)O(\sqrt N)O(N​)

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);long n = sc.nextLong();long res = 1;for (long i = 2; i * i <= n; i++) {if (n % i == 0) {int s = 0;while (n % i == 0) { // 分解质因子求次数s++; n /= i;}if (s % 2 == 1) res *= i; // 如果是奇数 则乘起来}}if (n > 1) res *= n; // 表示还有一个质因子 次数是1System.out.print(res);}
}

对于 n>1n > 1n>1 举例,24=23×324 = 2^3×324=23×3,此时我们的 res=2res=2res=2,但还有一个因子 333 没有算在内,因为我们的while(n % i == 0)中,最后一步代码n /= i = 3,还剩最后一个因子没有考虑,且次数为1,所以最后再乘上 nnn 即可,res=2×3=6res = 2 ×3=6res=2×3=6。

「蓝桥杯」完全平方数(Java)相关推荐

  1. 「蓝桥杯」直线(Java)

    第十二届蓝桥杯省赛javaB组第3题 这道题比赛的话我大概率做不出来. 涉及到直线问题我们需要考虑斜率和截距: 直线: y = k x + b y = kx+b y=kx+b, k k k 是斜率, ...

  2. 2020年第十一届蓝桥杯 - 国赛 - Java研究生组 - F.循环小数

    2020年第十一届蓝桥杯 - 国赛 - Java研究生组 - F.循环小数 在线评测 Ideas 对于一个纯循环小数,假设循环节为l,则小数为0.llll-,转换为分数就是 l / (10 ** n ...

  3. 2013蓝桥杯java试题_蓝桥杯2013决赛java本科b组试题.doc

    蓝桥杯2013决赛java本科b组试题.doc 试题一:公式求值问题描述输入n,m,k,输出下面公式的值.其中C_n^m是组合数,表示在n个人的集合中选出m个人组成一个集合的方案数.组合数的计算公式如 ...

  4. java迷宫类编程题_第十届蓝桥杯省赛java类B组 试题 E:迷宫 (动态规划之回溯法)...

    问题描述 试题 E: 迷宫 [问题描述] 下图给出了一个迷宫的平面图,其中标记为 1 的为障碍,标记为 0 的为可 以通行的地方. 010000 000100 001001 110000 迷宫的入口为 ...

  5. 第十二届蓝桥杯省赛JAVA B组杨辉三角形个人题解

    第十二届蓝桥杯省赛JAVA B组杨辉三角形个人题解(非满分) import java.util.Scanner; public class Main {public static void main( ...

  6. 蓝桥杯-Sine之舞-java

    蓝桥杯-Sine之舞-java 题目 问题描述最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三角函数基本功.所以他准备和奶牛们做一个"Sine之舞"的 ...

  7. 蓝桥杯 拿金币 java实现

    蓝桥杯 拿金币 java实现(通俗易懂) 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 有一个N x N的方格,每一个格子都有一些金币,只要站在格子里就能拿到里面的金币.你站在最左 ...

  8. 蓝桥杯软件类Java语言IDE(Eclipse)安装

    蓝桥杯软件类Java语言IDE(Eclipse)安装以及个性化设置 平时都在用idea搞工程类项目,正好报了下学期的蓝桥杯算法比赛,看到官网要求用eclipse编码,之前也参加过ccf-csp的比赛, ...

  9. 2021-第五届世界智能大会-「津门杯」国际网络安全创新大赛-Web-hate_php

    2021-第五届世界智能大会-「津门杯」国际网络安全创新大赛-Web-hate_php 打开网址直接告诉你过滤的代码,把字母数字和$._.@都过滤了,直接放弃 然后百度搜了这道题的答案,感觉发现了新大 ...

最新文章

  1. 《结对-贪吃蛇游戏-最终程序》
  2. sap可以指定应用服务器,SAP扫盲系列之一:什么是SAP系统和应用服务器
  3. python中write的用法_Python中操作文件之write()方法的使用教程
  4. 两数组的交集(无重复)Intersection of Two Arrays
  5. SpringMvc多视图整合(jsp、velocity、freemarker)
  6. 虚拟社会建设需要“网络社工”助力
  7. 桑文锋:创业是场持久战,我希望能重构中国互联网的数据根基
  8. 【并查集】家谱(luogu 2814/ssl 2343)
  9. PostgreSQL 、springboot 、spring data jpa 集成
  10. Flash 杂志《summer tree》 第六期发布
  11. 有幸和一位企业家聊天,他白手起家
  12. Dart 语言不如 Kotlin?这里列了 13 个原因
  13. c# Application.run和form.show区别
  14. Iroha and Haiku II
  15. FISCO BCOS 智能合约 可视化数据库 Mysql MariaDB
  16. android蓝牙协议栈bluedroid分析,安卓系统蓝牙协议栈 bluedroid 的使能
  17. 如何一站式高效管理固定资产?
  18. 数仓之事实表和维度表(一)
  19. JavaSE_day12:集合,泛型,增强for循环特性
  20. rtx服务器插件的作用,腾讯通RTX手机版插件介绍 - 有度帮助中心

热门文章

  1. 约瑟夫问题(Josephus)
  2. 2019年压力焊作业安全生产模拟考试题库及答案
  3. 随笔02 我的考研一败涂地
  4. IE-LAB网络实验室:5G和WIFI6,还傻傻的分不清吗?(3)
  5. 2021最新外卖霸王餐小程序系统源码/霸王餐美团/饿了么系统 /短视频带货/直播带货/特价电影/粉丝裂变玩源码
  6. 递推法输出斐波拉契数列
  7. AD域无法删除组织单位
  8. [附源码]Python计算机毕业设计车险管理系统
  9. 中国IT外包追赶印度机遇来临 外包业面临转型
  10. 吴晓波:预见2021(跨年演讲 —— 04 百万直播闹翻中国)