热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

T134321.计数

题目描述给出m个数a[1],a[2],…,a[m]求1~n中有多少数不是a[1],a[2],…,a[m]的倍数。输入输出格式输入格式:输入文件名为count.in。第一行,包含两个

题目描述

给出m个数a[1],a[2],…,a[m]

求1~n中有多少数不是a[1],a[2],…,a[m]的倍数。

输入输出格式

输入格式:

输入文件名为count.in。

第一行,包含两个整数:n,m

第二行,包含m个数,表示a[1],a[2],…,a[m]

输出格式:

输入输出样例

输入样例#1:
count.in	count.out
10 2
2 3	            3
输出样例#1:
输出一行,包含1个整数,表示答案

说明

对于60%的数据,1<=n<=106

对于另外20%的数据,m=2

对于100%的数据,1<=n<=109,0<=m<=20,1<=a[i]<=109

补几发题解

容斥,奇数个数的|lcm|减去,偶数个的加上

#include
using namespace std;
#define LL long long
int a[40];
int n,m;
int gcd(int x,int y) {
    if(y==0)return x;
    else return gcd(y,x%y);
}
LL ans=0;
void dfs(int num,int step,LL lcm) {
    if(lcm>n)return ;
    if(num==m+1){
        if(step%2==1)ans-=n/lcm;//奇数个时加上
        else if(step)ans+=n/lcm;//偶数个时减去
        return ;
    }
    dfs(num+1,step,lcm);
    LL tmp=lcm*a[num]/gcd(lcm,a[num]);//选择该数
    dfs(num+1,step+1,tmp);
}
int main () {
    scanf("%d%d",&n,&m);
    ans=n;
    for(int i=1;i<=m;++i ) {
        scanf("%d",a+i);
    }   
    dfs(1,0,1);
    printf("%lld\n",ans);
    return 0;
}

T13432 1.计数


推荐阅读
  • 大家要先下载protobuffer,在这里:https:code.google.compprotobufdownloadslist注意,需要下载两个,一个是complier,另外一 ... [详细]
  • 接着《扒一扒Nodejsformidable的onPart》和《也说文件上传之兼容IE789的进度条丢掉flash》;前面已完成兼容IE789的大文件上传:无flash的低版本进度 ... [详细]
  • 内容java基础巩固笔记-实现AOP功能的封装与配置的小框架设计(目录):XXXjava.util.ArrayList中代码Advice接口MyAdvice类BeanFactory ... [详细]
  • .NET Web应用程序安装包的制作经历:Sql数据库安装的3种方式
    一次难得的安装包制作经历,因为之前从没有制作过安装包,那就免不了遇到问题,在摸索和学习中获得了不少宝贵经验,在这里我将用图文并茂的形式详细描述一下流程及主要难点问题的解决方法,希望 ... [详细]
  • cURL是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持cURL库。本文将介绍cURL的一些高级特性,以 ... [详细]
  • httprunner3.X相比httprunner2.X系统中会新增4个命令:httprunner:核心命令hrun:httprunner的缩写,功能与httprunner完全相同 ... [详细]
  • #-*-coding:utf-8-*-importurllib2,urllib,cookielibimportreimportgetpassimportsqlite3impor ... [详细]
  • 恢复内容开始作用域分别为:当前对象、方法内部、类;局部变量:在方法体中定义的变量,局部变量只在定义它的方法中有效。成员变量:在整个类中都有效(全局变量是C语言中的叫法,Java中没 ... [详细]
  • ```#include#include#include#include#defineMAX_Hnodes1#defineMIN_Hnodes2#defineLLlonglongus ... [详细]
  • 答题:消息队列的核心功能就是:解耦合,异步,流量削峰解耦:接口调用发送,那如果E系统也要这个数据呢?那如果C系统现在不需要了呢?现在A系统又要发送第二种数据了呢?A系统负责人濒临崩 ... [详细]
  • 深度搜索DFS!
    好的,接下来就是本萌新的第一篇博客啦。直接上深搜!深度优先搜索(Depth-First-Search),简称“深搜”(dfs),是我们蒟蒻们最基本的搜索操作之一。简单地说,深搜就是 ... [详细]
  • 1、博客签名换行的代码2、效果3、好玩吧。HTML+CSS,要学习。HTML5+CSS ... [详细]
  • 操作系统原理之I/O设备管理(第六章上半部分下)
    中断处理程序的作?:IO中断处理程序的作?是将发出IO请求?被 ... [详细]
  • 基于LNMP环境安装配置phpMyAdmin4.8
    phpMyAdmin是一个以PHP为基础、以Web-Base方式架构在网站主机上的、可以通过web方式管理和操作MySQL数据库的管理工具。本文主要内容为基于LNMP环境安装php ... [详细]
  • J ... [详细]
author-avatar
一个幼儿女教师上
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有