ACM课件lecture03老少皆宜数学题
合集下载
acm数学竞赛试题

acm数学竞赛试题
ACM数学竞赛试题通常涉及各种数学领域,包括但不限于代数、几何、概率统计和组合数学等。
以下是一些经典的ACM数学竞赛试题:
1. 平面上n个点的k距离和最小值问题:给定平面上n个点,对于每个点,计算它到其他所有点的距离,然后求出这些距离中的k个最小值。
问题是:如何有效地计算这k个最小值?
2.最长公共子序列问题:给定两个序列,找出它们的最长公共子序列。
例如,对于序列
A = [1, 2, 3, 4] 和
B = [2, 3, 4, 5],最长公共子序列是[2, 3, 4]。
3. 凸包问题:给定平面上的一组点,找到一个最小的凸多边形,使得这个多边形能够包含这组点中的所有点。
4. 最短路问题:给定一个有向图,其中每条边都有一个非负的权重,找出图中任意两点之间的最短路径。
5. 子集和问题:给定一个正整数数组和一个目标值,判断数组中是否存在和为目标值的两个非空子集。
例如,给定数组[1, 2, 3, 4] 和目标值7,判断是否存在两个子集,它们的和分别为7。
以上只是ACM数学竞赛试题的一部分,实际上还有更多涉及数学各个领域的题目。
要提高解决这类问题的能力,需要不断练习和研究。
acm中的数学问题数论部分省公开课一等奖全国示范课微课金奖PPT课件

步骤:
a = 81, b = 63, a mod b = 18 a ← 63, b ← 18, a mod b = 9 a ← 18, b ← 9, a mod b = 0 所以9就是63与81最大条约数
第27页
欧几里德算法
欧几里德算法:
while b>0 do r←a%b a←b b←r
第一部分:同余相关
整除性质
欧几里德算法
扩展欧几里德算法
中国剩下定理
第二部分:素数相关
算术基本定理
欧拉定理
素数测试
Pollard rho方法
第7页
数论主要内容
第一部分:同余相关
整除性质
欧几里德算法
扩展欧几里德算法
中国剩下定理
第二部分:素数相关
算术基本定理
欧拉定理
素数测试
整除基本性质 欧几里德算法 扩展欧几里德算法 中国剩下定理
第43页
中国剩下定理
同模情况下,有这么性质:
乘法标准
8 mod 7 = 1
16 mod 7 = 2 64 mod 7 = 8 mod 7
加法标准 8 mod 7 = 1 10 mod 7 = 3
18 mod 7 = 4
第44页
故d|a。 • 所以d是a,b公因数 • 反之,假如d是a,b公因数,也能证出d
是b,c公因数
第12页
第一部分 同余相关
整除基本性质 欧几里德算法 扩展欧几里德算法 中国剩下定理
第13页
请写出12,30共有约数
第14页
请写出12,30共有约数 1,
第15页
请写出12,30共有约数 1, 2,
第37页
扩展欧几里德算法
扩展欧几里德算法(递归实现): int gcd(int a,int b) if b=0 then x←1 y←0 return a d←gcd(b,a%b) x'←y y'←x-[a/b]y x←x' y←y' return d
a = 81, b = 63, a mod b = 18 a ← 63, b ← 18, a mod b = 9 a ← 18, b ← 9, a mod b = 0 所以9就是63与81最大条约数
第27页
欧几里德算法
欧几里德算法:
while b>0 do r←a%b a←b b←r
第一部分:同余相关
整除性质
欧几里德算法
扩展欧几里德算法
中国剩下定理
第二部分:素数相关
算术基本定理
欧拉定理
素数测试
Pollard rho方法
第7页
数论主要内容
第一部分:同余相关
整除性质
欧几里德算法
扩展欧几里德算法
中国剩下定理
第二部分:素数相关
算术基本定理
欧拉定理
素数测试
整除基本性质 欧几里德算法 扩展欧几里德算法 中国剩下定理
第43页
中国剩下定理
同模情况下,有这么性质:
乘法标准
8 mod 7 = 1
16 mod 7 = 2 64 mod 7 = 8 mod 7
加法标准 8 mod 7 = 1 10 mod 7 = 3
18 mod 7 = 4
第44页
故d|a。 • 所以d是a,b公因数 • 反之,假如d是a,b公因数,也能证出d
是b,c公因数
第12页
第一部分 同余相关
整除基本性质 欧几里德算法 扩展欧几里德算法 中国剩下定理
第13页
请写出12,30共有约数
第14页
请写出12,30共有约数 1,
第15页
请写出12,30共有约数 1, 2,
第37页
扩展欧几里德算法
扩展欧几里德算法(递归实现): int gcd(int a,int b) if b=0 then x←1 y←0 return a d←gcd(b,a%b) x'←y y'←x-[a/b]y x←x' y←y' return d
(lecture03)2老少皆宜数学题new.ppt

20 2019/4/14
第三类 技 巧 型
21 2019/4/14
先来看一个简单的题目 铺垫一下:
22 2019/4/14
1021 Fibonacci Again
题目分析:
能被3整除的整数的特点? 如果两个数的和能被3整除,这两个数 有什么特点? 关于能否被3整除,这两个数一共有多 少种组合?
第四类 纸老虎型
33 2019/4/14
HDOJ_1071 The Area
第一眼:傻了…
想一想
笑了…
36 2019/4/14
抛物线公式:y=ax^2+bx+c 已知三点 -〉a、b、c 系数
公式已知 - 〉如何求面积? 会简单积分吗?
37 2019/4/14
第五类 AC基础型
38 2019/4/14
抱歉
如果平面上有n个点,并且每个点至少有2条 曲线段和它相连,就是说,每条曲线都是封 闭的,同时,我们规定: 1)所有的曲线段都不相交; 2)但是任意两点之间可以有多条曲线段。
如果我们知道这些线段把平面分割成了 m份, 你能知道一共有多少条曲线段吗?
42 2019/4/14
分析:从特殊到一般的方法
25 2019/4/14
回到正题
26 2019/4/14
Problem B: Number Sequence
题目特点:
这个题目是一个比较典型的ACM竞 赛题,尽管在真正的大赛中这个题目可 能算比较简单的,但在本次比赛中,本 题难度属于中等,可以说,能做出本题 的队伍基本都有二等奖以上。 但如果不认真分析,有可能会掉入 陷阱。
28 2019/4/14
Question:
浙大ACM简单讲解

• dp[2] = dp[1] + 1 + 1 = 4
• dp[3] = min{ dp[1] + 1 * 2 + 1, dp[2] + 1 + 1}
•
=5
G Islands
• 给定最多100个点的有向图,问有多少种加 边的方式,可以让最后整个图只由一些环 构成,没有多余的边。一个环至少要两个 点。
Lecture III 赛题解析
杭航@ZJU mailto:Hang.Hang.ZJU@
QQ:54621399
Part I The 10th ZJU Programming Contest
概述
• A Clock
472/614
• B CAPTCHA
87/399
• C Runaway t Bulb
• 三分法 • 求单峰函数在(x1,x2)上的极值 • 令a=(x2-x1)/3 + x1 • 令b=(x2-x1)/3 *2 + x1 • 如果f(a)>f(b),则用b更新x2 • 如果f(a)<f(b),则用a更新x1 • 每次把区间缩小成原来的2/3,最后收敛到
B Light Bulb
• 方法一:数学解法,列出函数式子,求导 解决
• 方法二:猜测L是关于某个参数的单峰函数, 可以采用三分法。
B Light Bulb
• 二分法 • 求单调函数在(x1,x2)上的零点 • 令x=(x1+x1)/2 • 如果f(x)和f(x1)同号,则用x更新x1 • 如果f(x)和f(x2)同号,则用x更新x2 • 每次把区间缩小成原来的1/2,最后收敛到
H Break Out
• 预处理后,变成了一个背包问题,背包的 容量最多为200,有最多200个物品,每个 物品不同容量的时候有不同的价值,求使 得总价值最高的方案。
ACM入门之三-位运算ppt课件

上面程序的输出结果是:
n1=78000,n2=-32768,n3=32768,c=c0,c<<4=3072
右移运算符
右移运算符“>>”是双目运算符。
其计算结果是把“>> ”的左操作数的各二进位全部 右移若干位后得到的值,要移动的位数就是“>>”的 右操作数。移出最右边的位就被丢弃。
对于有符号数,如long,int,short,char类型变量, 在右移时,符号位(即最高位)将一起移动, 并且大多数C/C++编译器规定,如果原符号位 为1,则右移时右边高位就补充1,原符号位为0, 则右移时高位就补充0。
右移运算符实例
#include <stdio.h> main() { int n1 = 15; short n2 = -15; unsigned short n3 = 0xffe0; unsigned char c = 15; n1 = n1>>2; n2 >>= 3; n3 >>= 4; c >>= 3; printf(
例如:表达式“21 | 18 ”的值是23(即二进制数 10111)。 按位或运算通常用来将某变量中的某些位置1或 保留某些位不变。 例如,如果需要将int型变量n的低8位全置成1, 而其余位不变,则可以执行:
n |= 0xff;
13
按位异或
按位异或运算符“^”是双目运算符。
功能:将参与运算的两操作数各对应的二进制位进 行异或操作,即只有对应的两个二进位不相同时, 结果的对应二进制位才是1,否则为0。
HDU3782xxx定律
/showproblem.php?pid=3782 Problem Description
ACM入门简单数学题

对于每组数据,输出一行,包含一个"Yes"或者 "No"。
2019/9/3
28
请自己仔细分析...
哪位同学做个陈述?
2019/9/3
29
课后任务:
完成在线练习:
201309《ACM程序设计》作业(2)—— 刘春英 老师
特别提醒:
作业务必尽力完成(第一次的作 业尚未完成的,一定要补上~)
作业密码:helloworld
return 0;}Fra bibliotek2019/9/3
23
HDOJ_1005: Number Sequence
2019/9/3
24
Question:
暴力(Brute-Force) 能解决问题吗?
2019/9/3
25
题目分析:
对于这种题目,千万不能蛮干!实际上, 有经验的同学看到本题目的数据规模,很快就 能知道:这类题目有规律可循。
STD-O 56 5
STD-O ?6
TMP-O 55
TMP-O ??
2019/9/3
9
有什么问题呢?
享受今天的慢车旅程吧~~
2019/9/3
10
HDOJ_1008: Elevator
2019/9/3
11
题目评述:
这是2004浙江省赛最简单的一题,当时训练 水平相对较高的学校基本上10分钟之内解决该 题,这是一个没有算法的简单模拟题目。
参知政事范仲淹等人遭谗离职,欧阳修上书替他们分辩,被贬到滁州做了两年知州。到任以后,他内心抑郁,但还能发挥“宽简而不扰”的作风,取得了某些政绩。《醉翁亭记》就是在这个时期写就的。目标导学二:朗读文章,通文顺字1.初读文章,结合工具书梳理文章字词。2.朗读文章,划分文章节奏,标出节奏划分有疑难的语句。节奏划分示例
2019/9/3
28
请自己仔细分析...
哪位同学做个陈述?
2019/9/3
29
课后任务:
完成在线练习:
201309《ACM程序设计》作业(2)—— 刘春英 老师
特别提醒:
作业务必尽力完成(第一次的作 业尚未完成的,一定要补上~)
作业密码:helloworld
return 0;}Fra bibliotek2019/9/3
23
HDOJ_1005: Number Sequence
2019/9/3
24
Question:
暴力(Brute-Force) 能解决问题吗?
2019/9/3
25
题目分析:
对于这种题目,千万不能蛮干!实际上, 有经验的同学看到本题目的数据规模,很快就 能知道:这类题目有规律可循。
STD-O 56 5
STD-O ?6
TMP-O 55
TMP-O ??
2019/9/3
9
有什么问题呢?
享受今天的慢车旅程吧~~
2019/9/3
10
HDOJ_1008: Elevator
2019/9/3
11
题目评述:
这是2004浙江省赛最简单的一题,当时训练 水平相对较高的学校基本上10分钟之内解决该 题,这是一个没有算法的简单模拟题目。
参知政事范仲淹等人遭谗离职,欧阳修上书替他们分辩,被贬到滁州做了两年知州。到任以后,他内心抑郁,但还能发挥“宽简而不扰”的作风,取得了某些政绩。《醉翁亭记》就是在这个时期写就的。目标导学二:朗读文章,通文顺字1.初读文章,结合工具书梳理文章字词。2.朗读文章,划分文章节奏,标出节奏划分有疑难的语句。节奏划分示例
ACM入门教程 数学问题
2020/10/15
14
Input:每行的第一个数是n(1<=n<=50),表示这 幢楼有几层,接下来有n个数,分别表示1到n层各 层的人数。到各层的人数不超过100个。大家都是 从地下车库坐电梯上来的。当n为0,则结束。
Output:每行输出最合理的那一层,当有好几层都 是合理的,那就都输出来,并且每个数据之间空一 格。
Sample Input: 3111 566821 0
Sample Output: 2 3
2020/10/15
15
Elevator
/showproblem.php?pid=1008
Problem Description
The highest building in our city has only one elevator. A request list is made up with N positive numbers. The numbers denote at which floors the elevator will stop, in specified order. It costs 6 seconds to move the elevator up one floor, and 4 seconds to move down one floor. The elevator will stay for 5 seconds at each stop. For a given request list, you are to compute the total time spent to fulfill the requests on the list. The elevator is on the 0th floor at the beginning and does not have to return to the ground floor when the requests are fulfilled.
(lecture03)老少皆宜数学题newPPT课件
38
分析:从特殊到一般的方 法
• 根据题目的意思,显然有:对于给定的 m和n,答案是唯一的.
• 为什么不通过特殊的图形来找规律?
• 结论?
05.12.2020
39
当然,这就是欧拉公式
• F+V-E=2
• 记不住公式怎么办?
05.12.2020
40
HDOJ_1425 sort
• 给你n个整数,请按从大到小的顺序输出其中 前m大的数。
05.12.2020
16
第三类 技巧型
05.12.2020
17
先来看一个简单的题目 铺垫一下:
05.12.2020
18
1021 Fibonacci Again
题目分析:
• 能被3整除的整数的特点? • 如有果什两么个特数点的 ?和能被3整除,这两个数 • 关少于种能组否合被?3整除,这两个数一共有多
比赛背景
由于前一年的邀请赛很多学校没有 做出一道题,所以,这次的比赛特 意准备了几道简单的题目,目的就 是让大多数的学校都能拿个气球回 去,于是有…
05.12.2020
5
第一类 弱智型
05.12.2020
6
Problem A: Let the Balloon Rise
题目评述:
1. 一个让你看到后兴奋的题目… 2. 只要懂点C或者C++,就可解决该问题。
还要看程序吗?
05.12.2020
20
Hdoj_1021程序清单:
• #include<stdio.h>
• int main()
•{
• long n;
• while(scanf("%ld",&n) != EOF)
ACM程序设计-计算简单题PPT课件
a[k++]=i;
}
授课:XXX
5
参考源代码
while(scanf("%d",&n)==1) {
printf("%d: ",n); for(i=0;i<k;i++) {
if(a[i]<=n) printf("%d ",a[i]);
} printf("\n"); } return 0; }
授课:XXX
授课:XXX
2
输出描述
对于每个整数n,输出所有不大于n的完数。每个整 数n的输出由n引导,跟上冒号,然后是由空格开道 的一个个完数,每个n的完数列表应占独立的一行。
输入样例
100
5000 输出样例
100: 6 28 5000: 6 28 496
授课:XXX
3
题目分析
如果针对每个整数都搜索一次 完数,时间会花费较多,由于 完数较少,可以先找出10000 以内的所有完数,然后再针对 n查表。
{
if (bp[i]) //i是素数
{
p[pCnt++] = i;
for (j = i + i; j <= Max; j += i) //依次筛掉i的倍数
bp[j] = false;
}
}
}
授课:XXX
26
刚才的发言,如 有不当之处请多指
正。谢谢大家!
2021/3/9
27
}
return 0;
}
授课:XXX
11
五位以内的对称素数
题目内容
判断一个数是否为对称且不大于五位数的素数。
ACM课件(lecture_08)-31页精选文档
ACM程序设计
上一周,
你
了吗?
2020/1/10
2
每周一星(7):
07054202
2020/1/10
3
第八讲
母函数及其应用
(Generation function)
2020/1/10
4
从递推关系说起
2020/1/10
5
研究以下多项式乘法:
(8-1)
可以看出:
x2项的系数a1a2+a1a3+...+an-1an中所有的项包括n个元 素a1,a2, …an中取两个组合的全体; 同理:x3项系数包含了从n个元素a1,a2, …an中取3 个元素组合的全体;
HDOJ_1398 Square Coins
Sample Input 2 10 30 0
Sample Output 1 4 27
2020/1/10
19
算法分析:
典型的利用母函数可解的题目。
G(x)=(1+x+x2+x3+x4+…)(1+x4+x8+x12 +…)(1+x9+x18+x27+…)…
2020/1/10
以此类推。
2020/1/10
6
特例:
若令a1=a2= …=an=1,在(8-1)式中 a1a2+a1a3+...+an-1an项系数中每一个组合有 1个贡献,其他各项以此类推。故有:
(8-2)
2020/1/10
7
母函数定义:
对于序列a0,a1,a2,…构造一函数:
称函数G(x)是序列a0,a1,a2,…的 母函数
上一周,
你
了吗?
2020/1/10
2
每周一星(7):
07054202
2020/1/10
3
第八讲
母函数及其应用
(Generation function)
2020/1/10
4
从递推关系说起
2020/1/10
5
研究以下多项式乘法:
(8-1)
可以看出:
x2项的系数a1a2+a1a3+...+an-1an中所有的项包括n个元 素a1,a2, …an中取两个组合的全体; 同理:x3项系数包含了从n个元素a1,a2, …an中取3 个元素组合的全体;
HDOJ_1398 Square Coins
Sample Input 2 10 30 0
Sample Output 1 4 27
2020/1/10
19
算法分析:
典型的利用母函数可解的题目。
G(x)=(1+x+x2+x3+x4+…)(1+x4+x8+x12 +…)(1+x9+x18+x27+…)…
2020/1/10
以此类推。
2020/1/10
6
特例:
若令a1=a2= …=an=1,在(8-1)式中 a1a2+a1a3+...+an-1an项系数中每一个组合有 1个贡献,其他各项以此类推。故有:
(8-2)
2020/1/10
7
母函数定义:
对于序列a0,a1,a2,…构造一函数:
称函数G(x)是序列a0,a1,a2,…的 母函数