【Codeforces 1114C】Trailing Loves (or L'oeufs?)

【链接】 我是链接,点我呀:)
【题意】

问你n!的b进制下末尾的0的个数

【题解】

证明:https://blog.csdn.net/qq_40679299/article/details/81167283 这题的话m比较大, 做个质因数分解就ok>_< 算n!有多少个x因子的话 以5为例子 (n=25) 25 20 15 10 5 把他们都除5 5 4 3 2 1 然后再除5 1 所以总共有6个 转换成代码就是 while(n>0){ ans+=n/5; n = n/5; }

【代码】

import java.io.*;
import java.util.*;

public class Main {
	
	static int N = (int)1e6;
	static InputReader in;
	static PrintWriter out;
		
	public static void main(String[] args) throws IOException{
		//InputStream ins = new FileInputStream("E:\\rush.txt");
		InputStream ins = System.in;
		in = new InputReader(ins);
		out = new PrintWriter(System.out);
		//code start from here
		new Task().solve(in, out);
		out.close();
	}
	
	static class Task{
		public void solve(InputReader in,PrintWriter out) {
			long n,m;
			n = in.nextLong();m = in.nextLong();
			ArrayList a = new ArrayList<>();
			ArrayList d = new ArrayList<>();
			for (long i = 2;i*i<=m;i++) {
				if (m%i==0) {
					a.add(i);
					int cnt1 = 0;
					while (m%i==0) {
						m/=i;
						cnt1++;
					}
					d.add(cnt1);
				}
			}
			if (m>1) {
				a.add(m);
				d.add(1);
			}
			long ans = (long)1e18 + 100;
			for (int i = 0;i <(int)a.size();i++) {
				long ai = (long) a.get(i);
				int pi = (int) d.get(i);
				long nn = n;
				long res = 0;
				while (nn>0) {
					res+=nn/ai;
					nn/=ai;
				}
				ans = Math.min(ans, res/pi);
			}
			out.print(ans);
		}
	}

	

	static class InputReader{
		public BufferedReader br;
		public StringTokenizer tokenizer;
		
		public InputReader(InputStream ins) {
			br = new BufferedReader(new InputStreamReader(ins));
			tokenizer = null;
		}
		
		public String next(){
			while (tokenizer==null || !tokenizer.hasMoreTokens()) {
				try {
				tokenizer = new StringTokenizer(br.readLine());
				}catch(IOException e) {
					throw new RuntimeException(e);
				}
			}
			return tokenizer.nextToken();
		}
		
		public long nextLong() {
			return Long.parseLong(next());
		}
		
		public int nextInt() {
			return Integer.parseInt(next());
		}
	}
}
posted @ 2019-02-11 11:10  AWCXV  阅读(284)  评论(0编辑  收藏  举报