HDU
pocketdream
我的征途,是星辰大海
展开
-
HDU1715 大菲波数 大数相加
原题链接 大数相加这种题一般是用字符数组或者 string 将其存储或读入,然后从个位开始一步一步模拟加法。容易遇到的坑就是两个数字之和的最高位进位问题,可以在进行加法之前先得到两个数字的位数,比较之后将小的那一个往大的那一个上加,相当于操作的是位数较大(也就是比较长)的那一个数字。例如是s1存了一个3000位的数字,s2存了2000位的数字,只需要将s1与s2之和通过不停的计算存储在s1对应的...原创 2018-11-02 19:56:28 · 289 阅读 · 0 评论 -
HDU5538 House Building (2015 ACM/ICPC 亚洲区长春站 L 题) 计算表面积
House Building Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 262144/262144 K (Java/Others) Total Submission(s): 3258Accepted Submission(s): 1974 Problem Description Have you ever pl...原创 2019-09-26 21:42:56 · 214 阅读 · 1 评论 -
HDU1051 田忌赛马 贪心
题目链接:https://cn.vjudge.net/problem/HDU-1052 题意: 就是很简单的田忌赛马的故事,田忌赢一场得200块,输一场-200块,平局不奖不罚。问给定双方马的速度,田忌最理想的收益是多少。 分析: 利用贪心的思想,总的原则就是这样:尽量赢和自己处在当前同一排名下的马,若赢不了,就拿自己最慢的马去当炮灰打掉对方最快的,尽量不平...原创 2019-03-05 20:12:42 · 270 阅读 · 0 评论 -
HDU3743 Frosh Week 归并排序求逆序对的数量
题目链接:https://cn.vjudge.net/problem/HDU-3743 题意: 给出一组 n 个数,每次交换相邻的两个整数,要你用最少的交换次数使得该排列呈递增排列。输出需要交换的次数。 分析: 这道题和 POJ 2299 Ultra-QuickSort 一模一样,都可以采用归并排序的方法,在排序中计数即可。归并排序的具体实现可以点击这里查...原创 2019-01-29 10:23:54 · 247 阅读 · 0 评论 -
HDU1124 Factorial 阶乘末尾‘0’的个数
题意: 这道题罗嗦了一大堆就是让求给定一个数 n ,求 n!末尾有多少个 0。 分析: 若要末尾出现 0 ,则需要乘数提供 5 ,而乘数能提供的 5 的个数则由他的因子决定。例如 10!,乘数 5 本身提供一个 5 ,乘数 10 也提供一个 5,所以 10!=3628800 末尾有两个零。n!里有多少个数能被 5 整除,个数为 n/5,这些数里还有一部分能被 ...原创 2018-12-11 23:18:33 · 214 阅读 · 0 评论 -
HDU1098 Ignatius's puzzle 数论
题意: 方程f(x)=5*x^13+13*x^5+k*a*x;输入任意一个数k,是否存在一个数a,对任意x都能使得f(x)能被65整除。 分析: 我们假设存在这个a,那么所有的f(x)都能被65整除。令x=1,此时就看(18+k*a)能不能被65整除,令a从1开始,一直循环到65即可,因为这就相当于循环了一个周期,到a=66时就(18+k*a)%65的值重复了。 看到过大佬用数学归纳法证明...原创 2018-12-09 23:03:32 · 235 阅读 · 0 评论 -
HDU1061 Rightmost Digit 快速幂
拿到这个题我第一反应是 简单!!! #include <cstdio> using namespace std; int main() { int t; scanf("%d", &t); while(t--){ int n; scanf("%d", &n); int tmp = 1; ...原创 2018-12-14 23:55:01 · 230 阅读 · 0 评论 -
HDU1141 Factstone Benchmark 数学
题目大意: 求一个最大的整数 n ,使得 n! 可以在一个 x-bit 计算机中以 unsigned integer(无号整数)来表示。即求 n!< 2 ^ x 成立时 n 最大的值。 分析: 一开始看感觉好复杂,但如果对两边取对数,就可以变成 log(n!) < log(2^x),即 log(n!) < x * log(2),化简一下变成 ...原创 2018-12-13 12:00:57 · 212 阅读 · 0 评论 -
HDU1792 A New Change Problem 数论
题意: 给定两个互质的数 A , B ,求由 x 个 A 和 y 个 B 组成的数(x>=0,y>=0)中最大不能表示的数,和不能表示的数的个数。 分析: 最大不能表示的数是 A * B - A - B,个数是 (A-1) * (B-1) / 2。 具体数学证明: 基础知识:Gcd(A, B) = 1 → Lcm(A, B) = AB剩余类,把所有整数划分成m个等价类,每...原创 2018-11-26 17:42:49 · 259 阅读 · 0 评论 -
HDU6188 Duizi and Shunzi 贪心
今天看了大佬们的博客,菜鸡感到瑟瑟发抖,只有持之以恒的边学边练才能有成效呀!!! 每日至少一题 加油鸭!!! 题目链接:https://vjudge.net/problem/HDU-6188 分析: 由于题目要求中顺子是三张牌组成,这道题只需要三个数三个数地考虑即可。内存给的比较大,可以在存入数据时用数组计数,下标为每次读入的数,内容为这个数出现的个数,这样可以直接...原创 2018-11-23 00:26:18 · 178 阅读 · 0 评论 -
HDU2492 Ping pong 树状数组的妙用
Ping pong Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 6547Accepted Submission(s): 2427 Problem Description N(3<=N<=20000) ping...原创 2019-09-27 21:03:01 · 238 阅读 · 1 评论