当前位置: 首页 > news >正文

KY105 整除问题(用Java实现)

描述

给定n,a求最大的k,使n!可以被a^k整除但不能被a^(k+1)整除。

输入描述:

两个整数n(2<=n<=1000),a(2<=a<=1000)

输出描述:

一个整数.

示例1

输入:

6 10

输出:

1

代码如下:

import java.math.BigInteger;
import java.util.Scanner;/** 整除问题* 	* 	BigInteger:* 		1、BigInteger.valueOf()将基本数据类型或字符串转化成BigInteger对象* 		2、bI1.compareTo(bI2):bI1与bI2进行比较,如果bI1大于bI2返回1,相等则返回0,小于则返回-1* 		*/
public class IntegralDivisionProblem {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while(scanner.hasNext()) {int n = scanner.nextInt();	int a = scanner.nextInt();BigInteger njc = BigInteger.ONE;//计算n的阶乘for (int i = 2; i <= n; i++) {//BigInteger.valueOf()将基本数据类型或字符串转化成BigInteger对象njc = njc.multiply(BigInteger.valueOf(i));}int time = 0;BigInteger aBI = BigInteger.valueOf(a);//bI1.compareTo(bI2):bI1与bI2进行比较,如果bI1大于bI2返回1,相等则返回0,小于则返回-1while(njc.compareTo(BigInteger.ZERO) == 1 && njc.mod(aBI).compareTo(BigInteger.ZERO) == 0) {time++;//循环计算n的阶乘能被除以多少次,进而求出最大的knjc = njc.divide(aBI);}System.out.println(time);}}}

http://www.lryc.cn/news/321010.html

相关文章:

  • C++ 接口的实现,及作用通俗理解方式
  • TypeScript:typescript的安装与运行
  • 【代码随想录Day27】
  • 【一】【单片机】有关LED的实验
  • 面试算法-49-缺失的第一个正数
  • 论文笔记:液体管道泄漏综合检测与定位模型
  • 抖音视频批量提取软件|无水印视频下载
  • Linux docker1--环境及docker安装
  • uniapp使用uview - DatetimePicker 时间选择器 /时间戳转化
  • python实现websocket
  • ElasticSearch简介及常见用法
  • js iframe获取documen中的对象为空问题
  • vue3子父组件之间的调用
  • 用 二层口 实现三层口 IP 通信的一个实现方法
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • 四.流程控制(顺序,分支,循环,嵌套)
  • 了解常用开发模型 -- 瀑布模型、螺旋模型、增量与迭代、敏捷开发
  • 使用 Vue CLI 创建一个 Vue2 项目
  • Linux工具 - 耀眼的git
  • Spring Security的开发
  • C语言 实用调试技巧
  • GPT的实现细节
  • docker安装Milvus
  • HTML静态网页成品作业(HTML+CSS)——世博园介绍(2个页面)
  • 微信小程序订阅消息授权弹窗事件
  • 谷歌的后量子密码学威胁模型
  • 机器人在果园内行巡检仿真
  • 蓝桥杯算法基础(14):十大排序算法(归并排序)c语言版
  • 力扣刷题(DAY09-DAY11)
  • IPC之管道