XTU1199:Number Game
题目描写叙述
给你一个有N个数的集合S和一个数X,推断是否存在S的一个子集,子集里的数的最小公倍数正好是X。
输入
第一行是数据组数T。 接下来有多组数据,每组数据包括两行: 第一行有2个数N和X,1<=N<=100000 ,X<=10^9。 第二行给出N个数,1<=S[i]<=10^9。
输出
对于每一组数据,输出一行"Case #X: Y",X是第几组数据,Y是Yes或No。
例子输入
2
4 20
2 3 4 5
3 61
3 4 5
例子输出
Case #1: Yes
Case #2: No
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
#define ll __int64
ll a[100005],p[100005],len; ll gcd(ll a,ll b)
{
if(b)
return gcd(b,a%b);
else return a; } int main()
{
ll t,n,x,i,j,r,cas = 1,sum;
scanf("%I64d",&t);
while(t--)
{
scanf("%I64d%I64d",&n,&x);
sum = 1;
for(i = 0; i<n; i++)
{
scanf("%I64d",&a[i]);
sum = (sum*a[i])%x;
}
printf("Case #%d: ",cas++);
if(sum%x)
printf("No\n");
else
{
int flag = 0;
len = 0;
for(i = 0; i<n; i++)
{
if(x%a[i] == 0)
p[len++] = a[i];
}
ll ans = 1;
for(i = 0; i<len; i++)
{
if(ans<p[i])
ans = (ans*p[i])/gcd(p[i],ans);
else
ans = (ans*p[i])/gcd(ans,p[i]);
if(ans==x)
{
flag = 1;
break;
}
}
if(flag)
printf("Yes\n");
else
printf("No\n");
}
} return 0;
}
XTU1199:Number Game的更多相关文章
- 原生JS:Number对象详解
Number对象 本文参考MDN做的详细整理,方便大家参考MDN JavaScript 的 Number 对象是经过封装的能让你处理数字值的对象.Number 对象由 Number() 构造器创建. ...
- JavaScript:Number 对象
ylbtech-JavaScript:Number 对象 1. Number 对象返回顶部 Number 对象 Number 对象是原始数值的包装对象. 创建 Number 对象的语法: var my ...
- HDU-4055:Number String
链接:HDU-4055:Number String 题意:给你一个字符串s,s[i] = 'D'表示排列中a[i] > a[i+1],s[i] = 'I'表示排列中a[i] < a[i+1 ...
- java基础系列(一):Number,Character和String类及操作
这篇文章总结了Java中最基础的类以及常用的方法,主要有:Number,Character,String. 1.Number类 在实际开发的过程中,常常会用到需要使用对象而不是内置的数据类型的情形.所 ...
- 前端(十四)—— JavaScript常用类:Number、Date类、字符串、数组、Math类、正则
JS常用类:Number类.Date类.Math类.字符串.数组.正则 一.Number 1.常用数字 整数:10 小数:3.14 科学计数法:1e5 | 1e-5 正负无穷:Infinity | - ...
- leetcode:Number of 1 Bits
Write a function that takes an unsigned integer and returns the number of ’1' bits it has (also know ...
- 1005:Number Sequence(hdu,数学规律题)
Problem Description A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1 ...
- ACM1005:Number Sequence
Problem Description A number sequence is defined as follows:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) ...
- LeetCode(476): Number Complement
Given a positive integer, output its complement number. The complement strategy is to flip the bits ...
随机推荐
- dbms_job dbms_scheduler简单比较
---------------------------陈旧的-------------------------------------/*--------------------- 创建job --- ...
- ArcGis(01)——地图切片以及发布底图服务
ArcGis(01)——地图切片以及发布底图服务 环境 操作系统:win10_x64 Gis版本:Arcis server 10.2 准备 1.tif格式地图资源 2.Arcis server 10. ...
- 高性能IO设计模式之阻塞/非阻塞,同步/异步解析
提到高性能,我想大家都喜欢这个,今天我们就主要来弄明白在高性能的I/O设计中的几个关键概念,做任何事最重要的第一步就是要把概念弄的清晰无误不是么?在这里就是:阻塞,非阻塞,同步,异步. OK, 现在来 ...
- 理解线程的挂起,sleep还有阻塞
线程是靠cpu来运行的,cpu要运行一个线程(不说别的)最起码就是要占用cpu时间,象Windows这样的多任务操作系统,可以允许多个线程同时运行,所谓的同时运行并不是真正的同时运行,而是轮流运行不同 ...
- Qt信号槽中槽函数为虚函数的一些感想
有时候,在写connect的时候会去犹豫一个问题----我的槽函数到底需不需要为虚函数.这个问题在我每次写connect的时候我都会反问自己,因为确实,如果你不去深究里面的moc,你发现不了太多问题. ...
- Java学习----Java程序结构
1.什么是类 在源文件中程序员自己定义的通过class关键字,自己给类名这样的定义的一个类,而类里包含一个或多个方法 2.什么是源文件 由程序员使用java语言编写的以.java为结尾的一个文件 3. ...
- Win7下安装Ubuntu双系统常见问题
[转自己以前的文章] 导航: ● win7下硬盘安装ubuntu常见问题 ● win7下u盘安装ubuntu常见问题 吐槽: Ubuntu的安装花了我将近15个小时,网上常见的.不常见的问题基本我都 ...
- Hibernate的CRUD
1.CRUD: C:sesion.save() R:session.get()? session.load() D:session.delete() U:session.update() 2.读取数据 ...
- iOS开发网络篇-JSON文件的解析
一.什么是JSON数据 1.JSON的简单介绍 JSON:是一种轻量级的传输数据的格式,用于数据的交互 JSON是javascript语言的一个子集.javascript是个脚本语言(不需要编译),用 ...
- 转:ElasticSearch 插件安装
原文来自于:http://www.07net01.com/linux/Elasticsearch_chajiananzhuang_21257_1350993328.html 进入elasticsear ...