首页 > 其他分享 >又是毕业季II

又是毕业季II

时间:2024-10-17 21:34:58浏览次数:1  
标签:毕业 int dfs II mp ans define mod

原题链接
\(非常简单的一道预处理题\)
\(通过小学知识我们可以知道1-1e6内的数平均因数个数为13.6\)

\(所以我们通过枚举每个数的所有质因子 再通过对质因子dfs求出其所有的因子 最坏复杂度为O(n*sqrt(inf))\)

\(在通过一个后缀处理掉所有的因子数\)

\(通过后缀往前更新答案\)

\(code:\)

点击查看代码
#include<bits/stdc++.h>

#define int long long
using namespace std;
#define pb push_back
#define pii pair<int,int>
#define all(x) x.begin(),x.end()
const int mod=1e9+7;
int qpw(int a,int b){int ans=1;while(b){if(b&1)ans=ans*a%mod;a=a*a%mod,b>>=1;}return ans;}
int vis[1000010];
int ans[1000010];
int ok[100010];
void solve() {
    int n;cin>>n;
    function<void(map<int,int>,vector<int>,int,int)>dfs=[&](map<int,int>mp,vector<int>p,int dep,int now){
        int pw=1;
        if(dep==p.size()){
            vis[now]++;
            return;
        }
        for(int i=0;i<=mp[p[dep]];i++){
            if(i)pw*=p[dep];
            dfs(mp,p,dep+1,now*pw);
        }
    };
    auto ck=[&](int x){
        map<int,int>mp;
        vector<int>p;
        for(int i=2;i<=sqrt(x);i++){
            if(x%i==0)p.pb(i);
            while(x%i==0){
                mp[i]++;
                x/=i;
            }
        }
        if(x>1)mp[x]++;
        if(mp.count(x)==1)p.push_back(x);
        dfs(mp,p,0,1);
    };
    for(int i=1;i<=n;i++){
        int x;cin>>x;
        ck(x);
    }
    int mx=1;
    for(int i=1;i<=1e6;i++){
        if(vis[i]){
            ans[vis[i]]=i;
        }
    }
    for(int i=1e6;i>=1;i--){
        ans[i]=max(ans[i],ans[i+1]);
    }
    for(int i=1;i<=n;i++)cout<<ans[i]<<'\n';
}
signed main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
    int _=1;
//    cin>>_;
    while(_--)solve();
}

标签:毕业,int,dfs,II,mp,ans,define,mod
From: https://www.cnblogs.com/archer233/p/18473137

相关文章

  • 计算机毕业设计 | Vue 构建的小商店管理系统(附源码)
    1,绪论1.1项目背景随着社会发展,网上购物已经成为我们日常生活的一部分。但是,至今为止大部分电商平台都是从人们日常生活出发,出售都是一些日常用品比如:食物、服装等等,并未发现一个专注于小商品的电商平台。而我国的电商是以小商品起家,现阶段需要小商品的人们不在少数,而大多......
  • 【开题报告】基于django+vue基于智能点击推荐的在线购物商城系统(论文+源码)计算机毕
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展,电子商务已成为现代商业活动的重要组成部分。在线购物商城作为电子商务的核心平台,不仅为消费者提供了便捷、高效......
  • 【开题报告】基于django+vue社团管理系统(论文+源码)计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在当今高校生活中,社团活动作为丰富学生课余生活、培养学生兴趣爱好的重要平台,其管理效率与透明度直接影响到学生的参与热情与社团的健康发......
  • java毕业设计-基于Springboot的教学资源共享平台【代码+论文+PPT】
    全文内容包括:1、采用技术;2、系统功能;3、系统截图;4、部分代码;5、配套内容。索取方式见文末微信号,欢迎关注收藏!一、采用技术语言:Java1.8框架:Springboot数据库:MySQL5.7、8.0开发工具:IntelliJIDEA旗舰版其他:Maven3.8以上二、系统功能成绩管理:记录和追踪学生课程成绩,便于......
  • 毕业设计——基于微信平台的居民出行调查小程序(附源码)
    摘 要随着微信的普及,基于微信平台的居民出行调查小程序系统可以为居民调查提供方便。首先调查研究问卷调查、调查活动服务的需求和系统所包含的各种功能。接着研究该系统的架构、数据库的结构、系统运行流程等以及微信平台的接入技术和功能实现相关技术,最后对系统进行测试......
  • python+flask框架的地震救灾小程序前台8(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景地震作为自然灾害之一,其突发性和破坏性给人类社会带来了巨大的生命和财产损失。当前,关于地震救灾的研究主要集中在地震预警技术、灾后救援......
  • python+flask框架的党建appapp8(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着信息技术的飞速发展,党建工作也逐渐向数字化、智能化方向转型。关于党建信息化的研究,现有研究主要以传统党建模式与信息技术的融合为主......
  • python+flask框架的代驾小程序设计与实现实现18(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着城市化进程的加速和交通安全意识的提升,代驾服务逐渐成为人们日常生活中不可或缺的一部分。特别是在饮酒后或长途驾驶疲劳时,代驾服务为......
  • python+flask框架的大学校园宿舍微信报修小程序小程序 38(开题+程序+论文) 计算机毕业
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着信息技术的飞速发展和智能手机的普及,微信作为国内最大的社交平台之一,其小程序功能已成为连接线上与线下的重要桥梁。在大学校园中,宿舍......
  • java毕业设计-基于Springboot的小型企业客户关系管理系统【代码+论文+PPT】
    全文内容包括:1、采用技术;2、系统功能;3、系统截图;4、部分代码;5、配套内容。索取方式见文末微信号,欢迎关注收藏!一、采用技术语言:Java1.8框架:Springboot数据库:MySQL5.7、8.0开发工具:IntelliJIDEA旗舰版其他:Maven3.8以上二、系统功能产品管理:集中维护产品信息,包括添加、......