HDU5339
题意:给你数a和数组b,然后用a模b中的数,求至少模多少个才能使a==0
思路:直接模拟吧,首先排序,因为模最大的符合(比如2,3,6)然后遍历b,去模其他的所有数,直到为0,标记退出,否则继续遍历b,循环操作。
#include<iostream>
#include<stdio.h>
#include<cmath>
#include<algorithm>
#define INF 999999999
using namespace std; bool cmp(int a,int b)
{
return a>b;
} int solve(int a,int b[],int n)
{
int ss=INF;
int flag; for(int i=1; i<=n; i++)
{
int temp=a;
flag = 0;
for(int j=i; j<=n; j++,flag++)
if(temp==0) break;
else
temp=temp%b[j];
if(temp==0)
ss=min(ss,flag);
}
return ss==INF?-1:ss;
}
int main()
{ int T;
int n,a;
int b[21];
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&a);
for(int i=1; i<=n; i++)
scanf("%d",&b[i]);
sort(b+1,b+n+1,cmp);
//for(int i=1; i<=n; i++)
// printf("%d",b[i]);
printf("%d\n",solve(a,b,n));
}
return 0;
}
HDU5339的更多相关文章
- HDU5339——Untitled
Problem Description There is an integer a and n integers b1,…,bn. After selecting some numbers from ...
随机推荐
- 省队集训Day3 light
[问题描述] “若是万一琪露诺(俗称 rhl)进行攻击,什么都好,冷静地回答她的问题来吸引她.对方表现出兴趣的话,那就慢慢地反问.在她考虑答案的时候,趁机逃吧.就算是很简单的问题,她一定也答不上来.” ...
- 复杂事件处理——Esper入门(示例程序)
前面对Esper Quick Start & Tutorial进行了简单描述,希望各位看官能够大致了解what is Esper,甚至对how to work有朦朦胧胧的了解. 开发一个Esp ...
- program_options禁止命令行短参数
典型的 boost program_options的用法如下: #include <boost/program_options.hpp> using namespace boost::pr ...
- 【Linux】 诊断工具-strace
1,别人家的总结: http://www.cnblogs.com/bangerlee/archive/2012/02/20/2356818.html 2,我自己碰到问题: 暂无. 3,使用场景: 程序 ...
- Unity3D中的Coroutine详解
Unity中的coroutine是通过yield expression;来实现的.官方脚本中到处会看到这样的代码. 疑问: yield是什么? Coroutine是什么? unity的coroutin ...
- bbc 大数据
http://video.sina.com.cn/v/b/107900125-2192582404.html
- 创建mysql数据库
mysql> create database wzhpush3 default charset utf8 collate utf8_general_ci;
- c# 函数相关练习
1.输入一个正整数,求1!+2!+3!+...+n! 2.输入姓名,年龄,工作单位 我叫**,今年**岁了,现在在****工作 要求,在Main函数中接收这三个值 传到函数中打印 3.写一 ...
- 普通table表格样式及代码大全(全)
普通table表格样式及代码大全(全)(一) 单实线边框表格 <TABLE style="BORDER-COLLAPSE: collapse" borderColor=#00 ...
- [LeetCode#154]Find Minimum in Rotated Sorted Array II
The question: Follow up for "Find Minimum in Rotated Sorted Array":What if duplicates are ...