zoukankan      html  css  js  c++  java
  • [bzoj1053][HAOI2007]反素数ant

    题意 对于任何正整数x,其约数的个数记作g(x)。例如g(1)=1、g(6)=4。如果某个正整数x满足:g(x)>g(i) 0<i<x ,则称x为反质数。给定n,求小等于n的最大反质数。

    正确题解:每个数用的质数肯定是连续的,并且数量递减,所以直接搜索。

    非常正确错误题解:打表。对于比较大的答案,肯定有用到2.3.5等小质数,剪枝一下应该可以在考试时间内打完吧......

    #include<iostream>
    #include<cstdio>
    using namespace std;
    const int x[68]={1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260,1680,2520,5040,7560,10080,15120,20160,25200,27720,45360,50400,55440,83160,110880,166320,221760,277200,332640,498960,554400,665280,720720,1081080,1441440,2162160,2882880,3603600,4324320,6486480,7207200,8648640,10810800,14414400,17297280,21621600,32432400,36756720,43243200,61261200,73513440,110270160,122522400,147026880,183783600,245044800,294053760,367567200,551350800,698377680,735134400,1102701600,1396755360};
    int n;
    int main()
    {
        scanf("%d",&n);int l=0,r=67,mid,ans;
        while(l<=r){mid=(l+r)>>1;if(x[mid]<=n)ans=x[mid],l=mid+1;else r=mid-1;}
        cout<<ans;
        return 0;
    }
  • 相关阅读:
    【2014广州市选day1】JZOJ2020年9月12日提高B组T2 导弹拦截
    JZOJ2020年9月12日提高B组反思
    部署zookeeper
    13安装heapster
    11 安装traefik
    10 安装coredns
    9 安装flannel
    8 部署kube-proxy
    7 部署kubelete
    6 部署 controller-manager scheduler
  • 原文地址:https://www.cnblogs.com/FallDream/p/bzoj1053.html
Copyright © 2011-2022 走看看