列表

详情


NC225521. 发糖啦!!

描述

众所周知,清楚姐姐是一个大主播,经常深夜直播高难度游戏。

在这一天智乃姐姐在看清楚姐姐直播的时候,智乃姐姐大手一挥,即答到:清楚姐姐死一次就送一次礼物




在最后下播的时候清楚姐姐死了256次,就出现了上述金句。
智乃姐姐真太宠溺清楚哥哥了(没错清楚是智乃男朋友)
现在笨笨的小沙想问你,请问给定一个数n,请问n转换成多少进制后数的长度最长同时是一个整数(本题对整数的定义是转换为 进制后, )
注:在有多个答案的情况下,输出进制数小的答案

输入描述

首先输入一个数T表示有T组数据
随后T行每行一个数n
其中(T<=1e4,1<n<=1e9)

输出描述

对于每组数据输出一行答案

示例1

输入:

2
16
14

输出:

2
7

说明:

16转换为2进制是10000刚好是一个整数
14转换为2进制为1110不是一个整数
....
转换为7进制时,20是一个整数

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++ 解法, 执行用时: 828ms, 内存消耗: 464K, 提交时间: 2021-08-18 22:21:57

#include<bits/stdc++.h>
using namespace std;
int main(){
	int t;scanf("%d",&t);
	while(t--){
		int n;scanf("%d",&n);
		int ans=n;
		for(int i=2;i*i<=n;i++){
			if(n%i==0){
				int nn=n;
                while(nn%i==0)nn/=i;
				if(nn<i){
					ans=i;
					break;
				}
				else
					ans=min(ans,n/i);
			}
		}
        printf("%d\n",ans);
	}
}

上一题