一、设有一个数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。

四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并完成相关题目。

表1-1数据库的表结构

表(一)Student (学生表)

属性名

数据类型

可否为空

含 义

Sno

varchar (20)

学号(主码)

Sname

varchar (20)

学生姓名

Ssex

varchar (20)

学生性别

Sbirthday

datetime

学生出生年月

Class

varchar (20)

学生所在班级

表(二)Course(课程表)

属性名

数据类型

可否为空

含 义

Cno

varchar (20)

课程号(主码)

Cname

varchar (20)

课程名称

Tno

varchar (20)

教工编号(外码)

表(三)Score(成绩表)

属性名

数据类型

可否为空

含 义

Sno

varchar (20)

学号(外码)

Cno

varchar (20)

课程号(外码)

Degree

Decimal(4,1)

成绩

主码:Sno+ Cno

表(四)Teacher(教师表)

属性名

数据类型

可否为空

含 义

Tno

varchar (20)

教工编号(主码)

Tname

varchar (20)

教工姓名

Tsex

varchar (20)

教工性别

Tbirthday

datetime

教工出生年月

Prof

varchar (20)

职称

Depart

varchar (20)

教工所在部门

表1-2数据库中的数据

表(一)Student

Sno

Sname

Ssex

Sbirthday

class

108

曾华

1977-09-01

95033

105

匡明

1975-10-02

95031

107

王丽

1976-01-23

95033

101

李军

1976-02-20

95033

109

王芳

1975-02-10

95031

103

陆君

1974-06-03

95031

表(二)Course

Cno

Cname

Tno

3-105

计算机导论

825

3-245

操作系统

804

6-166

数字电路

856

9-888

高等数学

831

表(三)Score

Sno

Cno

Degree

103

3-245

86

105

3-245

75

109

3-245

68

103

3-105

92

105

3-105

88

109

3-105

76

101

3-105

64

107

3-105

91

108

3-105

78

101

6-166

85

107

6-166

79

108

6-166

81

表(四)Teacher

Tno

Tname

Tsex

Tbirthday

Prof

Depart

804

李诚

1958-12-02

副教授

计算机系

856

张旭

1969-03-12

讲师

电子工程系

825

王萍

1972-05-05

助教

计算机系

831

刘冰

1977-08-14

助教

电子工程系

1、查询Student表中的所有记录的Sname、Ssex和Class列。

2、查询教师所有的单位即不重复的Depart列。

3、查询Student表的所有记录。

4、查询Score表中成绩在60到80之间的所有记录。

5、查询Score表中成绩为85,86或88的记录。

6、查询Student表中"95031"班或性别为"女"的同学记录。

7、以Class降序查询Student表的所有记录。

8、以Cno升序、Degree降序查询Score表的所有记录。

9、查询"95031"班的学生人数。

10、 查询Score表中的最高分的学生学号和课程号。(子查询或者排序)

11、查询每门课的平均成绩。

12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。

13、查询分数大于70,小于90的Sno列。

14、查询所有学生的Sname、Cno和Degree列。

15、查询所有学生的Sno、Cname和Degree列。

16、查询所有学生的Sname、Cname和Degree列。

17、 查询"95033"班学生的平均分。

18、假设使用如下命令建立了一个grade表:

create table grade(low int(3),upp int(3),rank char(1))

insert into grade values(90,100,'A')

insert into grade values(80,89,'B')

insert into grade values(70,79,'C')

insert into grade values(60,69,'D')

insert into grade values(0,59,'E')

现查询所有同学的Sno、Cno和rank列。

19、  查询选修"3-105"课程的成绩高于"109"号同学成绩的所有同学的记录。

20、查询score中选学多门课程的同学中分数为非最高分成绩的记录。

21、查询成绩高于学号为"109"、课程号为"3-105"的成绩的所有记录。

22、查询和学号为108的同学同年出生的所有学生的Sno、Sname和Sbirthday列。

23、查询"张旭"教师任课的学生成绩。

24、查询选修某课程的同学人数多于5人的教师姓名。

25、查询95033班和95031班全体学生的记录。

26、  查询存在有85分以上成绩的课程Cno.

27、查询出"计算机系"教师所教课程的成绩表。

28、查询"计算机系"与"电子工程系"不同职称的教师的Tname和Prof。

29、查询选修编号为"3-105"课程且成绩至少高于选修编号为"3-245"的同学的Cno、Sno和Degree,并按Degree从高到低次序排序。

30、查询选修编号为"3-105"且成绩高于选修编号为"3-245"课程的同学的Cno、Sno和Degree.

31、 查询所有教师和同学的name、sex和birthday.

32、查询所有"女"教师和"女"同学的name、sex和birthday.

33、 查询成绩比该课程平均成绩低的同学的成绩表。

34、查询所有任课教师的Tname和Depart.

35 、查询所有未讲课的教师的Tname和Depart.

36、查询至少有2名男生的班号。

37、查询Student表中不姓"王"的同学记录。

38、查询Student表中每个学生的姓名和年龄。

39、查询Student表中最大和最小的Sbirthday日期值。

40、以班号和年龄从大到小的顺序查询Student表中的全部记录。

41、查询"男"教师及其所上的课程。

42、查询最高分同学的Sno、Cno和Degree列。

43、查询和"李军"同性别的所有同学的Sname.

44、查询和"李军"同性别并同班的同学Sname.

45、查询所有选修"计算机导论"课程的"男"同学的成绩表。

代码:

 USE exam;
-- 创建表
-- 学生表
CREATE TABLE student(
sno VARCHAR(20) NOT NULL PRIMARY KEY,-- 学生学号
sname VARCHAR(20) NOT NULL,-- 学生姓名
ssex VARCHAR(20) NOT NULL,-- 学生性别
sbirthday date, -- 学生出生年月
class VARCHAR(20)-- 所在班级
);
-- 老师表
CREATE TABLE teacher(
tno VARCHAR(20) NOT NULL PRIMARY KEY,-- 老师编号
tname VARCHAR(20) NOT NULL,-- 老师姓名
tsex VARCHAR(20) NOT NULL,-- 老师性别
tbirthday date,-- 老师出生年月
prof VARCHAR(20),-- 职称
depart VARCHAR(20) NOT NULL-- 所在部门
);
-- 课程表
CREATE TABLE course(
cno VARCHAR(20) NOT NULL PRIMARY KEY,-- 课程号
cname VARCHAR(20) NOT NULL,-- 课程名称
tno VARCHAR(20) NOT NULL,-- 教工编号
FOREIGN KEY (tno) REFERENCES teacher(tno) -- 外键
);
-- 成绩表
CREATE TABLE score(
sno VARCHAR(20) NOT NULL, -- 学生编号
cno VARCHAR(20) NOT NULL, -- 课程编号
degree DECIMAL(4,1),-- 成绩
CONSTRAINT fk FOREIGN KEY (sno) REFERENCES student(sno),-- 学生外键
CONSTRAINT fk1 FOREIGN KEY (cno) REFERENCES course(cno),-- 课程外键
PRIMARY KEY (sno,cno)
);
-- 18题grade表
create table grade(low int(3),upp int(3),rank char(1));
insert into grade values(90,100,'A');
insert into grade values(80,89,'B');
insert into grade values(70,79,'C');
insert into grade values(60,69,'D');
insert into grade values(0,59,'E'); -- 录入信息
-- 录入学生表信息
INSERT INTO student VALUES
('','曾华','男','1977-09-01',''),
('','匡明','男','1975-10-02',''),
('','王丽','女','1976-01-23',''),
('','李军','男','1976-02-20',''),
('','王芳','女','1975-02-10',''),
('','陆君','男','1974-06-03','');
-- 录入老师的信息
INSERT INTO teacher VALUES
('','李成','男','1958-12-02','副教授','计算机系'),
('','张旭','男','1969-03-12','讲师','电子工程系'),
('','王萍','女','1972-05-05','助教','计算机系'),
('','刘冰','女','1977-08-14','助教','电子工程系');
-- 录入课程信息
INSERT INTO course VALUES
('3-105','计算机导论',''),
('3-245','操作系统',''),
('6-166','数字电路',''),
('9-888','高等数学','');
-- 录入成绩信息
INSERT INTO score VALUES
('','3-245',86),
('','3-245',75),
('','3-245',68),
('','3-105',92),
('','3-105',88),
('','3-105',76),
('','3-105',64),
('','3-105',91),
('','3-105',78),
('','6-166',85),
('','6-166',79),
('','6-166',81);
-- 查询
-- 1,查询Student表中的所有记录的Sname、Ssex和Class列
SELECT sname,ssex,class FROM student; -- 2,查询教师所有的单位即不重复的Depart列
SELECT DISTINCT depart 所在单位 FROM teacher; -- 3,查询Student表的所有记录
SELECT * FROM student; -- 4,查询Score表中成绩在60到80之间的所有记录
-- 前闭后开
SELECT * FROM score WHERE degree BETWEEN 60 AND 80; -- 5,查询Score表中成绩为85,86或88的记录
SELECT * FROM score WHERE degree=85 || degree=86 || degree=88;
SELECT * FROM score WHERE degree=85 OR degree=86 OR degree=88;
SELECT * FROM score WHERE degree IN (85,86,88); -- 6,查询Student表中“95031”班,性别为“女”的同学记录
SELECT * FROM student WHERE ssex='女' AND class='';
SELECT * FROM student WHERE ssex='女' OR class=''; -- 7,Class降序查询Student表的所有记录
SELECT * FROM student ORDER BY class DESC; -- 8,以Cno升序,Degree降序查询Score表的所有记录。
SELECT * FROM score ORDER BY cno,degree DESC; -- 9,查询“95031”班的学生人数。
SELECT class 班级,COUNT(*) 人数 FROM student WHERE class='';
SELECT class 班级 FROM student WHERE class=''; -- 10,查询Score表中的最高分的学生学号和课程号。(子查询或者排序)
SELECT sno 学号,cno 课程号 FROM score WHERE degree =(SELECT MAX(degree)FROM score ) -- 11,查询每门课的平均成绩
SELECT cno 课程编号,AVG(degree) FROM score GROUP BY cno;
-- 加上课程名称了
SELECT cno 课程编号,cname 课程名称,AVG(degree)
FROM (SELECT score.cno,cname,degree FROM course,score WHERE course.cno=score.cno) AS xx
GROUP BY cno;
-- 1.明确要查询的表,可能是子查询(明确语句的执行顺序)
-- 2.加条件
-- 3.尽量用IN,不用等号?
-- 12,查询Score表中至少有5名学生选修的并以3开头的课程的平均分数
-- 没有加上课程名,太麻烦
-- 方法一:
SELECT cno,AVG(degree) FROM score WHERE
cno=(SELECT cno FROM score WHERE cno LIKE '3%' GROUP BY cno HAVING COUNT(*)>=5);
-- 方法二:
SELECT cno,AVG(degree ) FROM score WHERE cno LIKE '3%' GROUP BY cno HAVING COUNT(*)>=5; -- 13,查询分数大于70,小于90的Sno列
-- between and 前闭后开?
SELECT sno FROM score WHERE degree>70 AND degree<90; -- 14,查询所有学生的Sname、Cno和Degree列
-- 可以试着加上课程的名字
-- 用JOIN写写
SELECT sname,cno,degree FROM student,score WHERE student.sno=score.sno; -- 15,查询所有学生的Sno、Cname和Degree列
-- 用JOIN写写
SELECT student.sno,sname,cname,degree FROM student,score,course
WHERE student.sno=score.sno AND score.cno=course.cno
ORDER BY student.sno; -- 16,查询所有学生的Sname、Cname和Degree列
SELECT sname,cname,degree FROM student,score,course
WHERE student.sno=score.sno AND score.cno=course.cno
ORDER BY student.sno; -- 17,查询“95033”班学生的平均分。
SELECT class,AVG(degree) FROM score,student
WHERE student.sno=score.sno and class=''; -- 18,现查询所有同学的Sno、Cno和rank列
SELECT student.sno,cno,rank FROM student,score,grade
WHERE student.sno=score.sno AND degree<=upp AND degree>low;
-- 方法二:这个很重要
SELECT sno,cno,rank FROM score JOIN grade ON degree BETWEEN low AND upp; -- 19,查询选修“3-105”课程的成绩高于“109”号同学成绩的所有同学的记录。
SELECT * FROM score WHERE cno='3-105'
AND degree>(SELECT degree FROM score WHERE sno=''AND cno='3-105'); -- 20,查询score中选学多门课程的同学中分数为非最高分成绩的记录。
-- 会有别名错误,什么时候才必须加别名
SELECT * FROM score
WHERE cno in(SELECT cno FROM score GROUP BY cno HAVING count(*)>1)
AND degree <> (SELECT MAX(degree) FROM score);
-- 更正
SELECT * FROM score a
WHERE sno in(SELECT sno FROM score GROUP BY sno HAVING count(*)>1)
AND degree <> (SELECT MAX(degree) FROM score b WHERE b.cno=a.cno);
-- 另一种理解
SELECT * FROM score a
WHERE sno in(SELECT sno FROM score GROUP BY sno HAVING count(*)>1)
AND degree <> (SELECT MAX(degree) FROM ); -- 21,查询成绩高于学号为“109”、课程号为“3-105”的成绩的所有记录。
SELECT * FROM score
WHERE degree > (SELECT max(degree) FROM score WHERE sno=''AND cno = '3-105'); -- 22,查询和学号为108的同学同年出生的所有学生的Sno、Sname和Sbirthday列。
SELECT * FROM student
WHERE YEAR(sbirthday)=(SELECT YEAR(sbirthday) FROM student WHERE sno='') AND sno <> ''; -- 23,查询“张旭“教师任课的学生成绩。
SELECT degree FROM course,teacher,score
WHERE teacher.tno=course.tno AND course.cno=score.cno AND tname='张旭';
-- :嵌套的做法 -- 24,查询选修某课程的同学人数多于5人的教师姓名
SELECT tname FROM course,teacher,score
WHERE teacher.tno=course.tno AND course.cno=score.cno
GROUP BY teacher.tno HAVING count(*)>5;
-- 嵌套的做法
SELECT tname FROM teacher WHERE tno IN
(SELECT tno FROM course WHERE cno IN
(SELECT cno FROM score GROUP BY cno HAVING COUNT(*)>5)); -- 25,查询95033班和95031班全体学生的记录
SELECT * FROM student WHERE class='' OR class='';
SELECT * FROM student WHERE class IN ('',''); -- 26,查询存在有85分以上成绩的课程Cno.
SELECT DISTINCT cno FROM score WHERE degree>85; -- 27,查询出“计算机系“教师所教课程的成绩表。
SELECT score.sno,score.cno,score.degree,depart FROM course,teacher,score
WHERE teacher.tno=course.tno AND course.cno=score.cno AND depart='计算机系';
-- 这里也可以用嵌套 -- 28,查询“计算机系”与“电子工程系“不同职称的教师的Tname和Prof
-- 方法一:
SELECT tname,prof FROM teacher WHERE depart='计算机系'
AND prof NOT IN(SELECT prof FROM teacher WHERE depart='电子工程系' )
UNION
SELECT tname,prof FROM teacher WHERE depart='电子工程系'
AND prof NOT IN(SELECT prof FROM teacher WHERE depart='计算机系' ) ;
-- 方法二:思路不清晰,得整理
SELECT tname,prof FROM teacher a WHERE
a.prof NOT IN (SELECT b.prof FROM teacher b WHERE b.depart <> a.depart )
-- 方法三:
SELECT * FROM teacher WHERE prof NOT IN (SELECT prof FROM teacher WHERE depart='计算机系'
AND prof IN(SELECT prof FROM teacher WHERE depart='电子工程系')); -- 29,查询选修编号为“3-105“课程且成绩至少高于选修编号为“3-245”的同学的
-- Cno、Sno和Degree,并按Degree从高到低次序排序。
SELECT cno,sno,degree FROM score WHERE cno='3-105'
AND degree > ANY(SELECT MIN(degree) FROM score WHERE cno='3-245' )
ORDER BY degree DESC;
-- ANY 至少一个 ALL 所有的 可以用来替代min和max -- 30,查询选修编号为“3-105”且成绩高于选修编号为“3-245”课程的同学的Cno、Sno和Degree.
SELECT cno,sno,degree FROM score WHERE cno='3-105'
AND degree > ALL(SELECT MAX(degree) FROM score WHERE cno='3-245' )
ORDER BY degree DESC; -- 31,查询所有教师和同学的name、sex和birthday.
SELECT sname 姓名,ssex 性别,sbirthday 生日 FROM student
UNION-- 研究一下这个还有相关子查询
SELECT tname 姓名,tsex 性别,tbirthday 生日 FROM teacher; -- 32,查询所有“女”教师和“女”同学的name、sex和birthday.
SELECT sname 姓名,ssex 性别,sbirthday 生日 FROM student WHERE ssex='女'
UNION-- 研究一下join
SELECT tname 姓名,tsex 性别,tbirthday 生日 FROM teacher WHERE tsex='女'; -- 33,查询成绩比该课程平均成绩低的同学的成绩表。
-- 相关子查询的应用
SELECT * FROM score a
WHERE a.degree > (SELECT AVG(degree) FROM score b WHERE b.cno=a.cno); -- 34,查询所有任课教师的Tname和Depart.
-- 方法一:
SELECT tname,depart FROM teacher WHERE tname IN
(SELECT DISTINCT tname FROM course,teacher,score
WHERE teacher.tno=course.tno AND course.cno=score.cno);
-- 方法二:还得研究一下啊
SELECT DISTINCT tname,depart FROM teacher LEFT JOIN course ON teacher.tno=course.tno
LEFT JOIN score ON score.cno=course.cno WHERE degree IS NOT NULL;
-- 嵌套的方法
SELECT tname,depart FROM teacher WHERE tno IN (SELECT tno FROM course ); -- 35,查询所有未讲课的教师的Tname和Depart.
SELECT tname,depart FROM teacher WHERE tname NOT IN
(SELECT DISTINCT tname FROM course,teacher,score
WHERE teacher.tno=course.tno AND course.cno=score.cno);
-- 方法二:
SELECT tname,depart FROM teacher LEFT JOIN course ON teacher.tno=course.tno
LEFT JOIN score ON score.cno=course.cno WHERE degree IS NULL; -- 36,查询至少有2名男生的班号。
SELECT class FROM student
GROUP BY class HAVING COUNT(ssex)>=2; -- 37,查询Student表中不姓“王”的同学记录。
SELECT * FROM student WHERE sname NOT LIKE '王%'; -- 38,查询Student表中每个学生的姓名和年龄。
SELECT sname 姓名,YEAR(NOW())-YEAR(sbirthday) 年龄 FROM student; -- 39,查询Student表中最大和最小的Sbirthday日期值。
SELECT MAX(sbirthday),MIN(sbirthday) FROM student;
SELECT MAX(sbirthday) FROM student UNION SELECT MIN(sbirthday) FROM student; -- 40,以班号和年龄从大到小的顺序查询Student表中的全部记录。
SELECT * FROM student ORDER BY class DESC,sbirthday ASC; -- 41,查询“男”教师及其所上的课程。
SELECT cname,tname FROM course JOIN teacher ON teacher.tno=course.tno
WHERE tsex='男'; -- 42,查询最高分同学的Sno、Cno和Degree列。
SELECT sno,cno,degree FROM score WHERE degree = (SELECT MAX(degree) FROM score); -- 43,查询和“李军”同性别的所有同学的Sname.
SELECT sname FROM student WHERE ssex IN
(SELECT ssex FROM student WHERE sname='李军'); -- 44,查询和“李军”同性别并同班的同学Sname.
SELECT sname FROM student WHERE
ssex IN (SELECT ssex FROM student WHERE sname='李军')
AND
class IN (SELECT class FROM student WHERE sname='李军'); -- 45,查询所有选修“计算机导论”课程的“男”同学的成绩表。
SELECT * FROM course JOIN score ON course.cno=score.cno
JOIN student ON student.sno=score.sno
WHERE cname='计算机导论' AND ssex='男';
-- 嵌套的思路

MySql练习+加源代码的更多相关文章

  1. Python连接MySQL的实例代码

    Python连接MySQL的实例代码   MySQLdb下载地址:http://sourceforge.net/projects/mysql-python/ 下载解压缩后放到%Python_HOME% ...

  2. python3.4学习笔记(二十五) Python 调用mysql redis实例代码

    python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...

  3. MySQL 创始人:写代码比打游戏爽,程序员应多泡开源社区

     王练 发布于2017年09月04日 收藏 43   开源中国全球专享福利,云栖大会购票大返现!>>>   根据StackOverflow的最新调查,MySQL仍然是全世界最流行的数 ...

  4. MySQL复习值代码知识点(1)

    MySQL复习值代码知识点 一. 创建数据库 create database 数据库名: 二. 删除数据库 drop database 数据库名: 三. 选择相应的数据库 use 数据库名: 四. 创 ...

  5. mysql存储html代码之导出后无法导入问题

    我用mysql的text类型存储了一些html代码,然后用navicat for mysql导出,然后再次导入的时候,就死活导不进去. mysql提示的错误是:this saves the data  ...

  6. Java连接MySQl数据库实现代码

    1. 获取数据库连接和查询代码 package connectionmysql; import java.sql.Connection; import java.sql.DriverManager; ...

  7. Linux自动备份MySQL数据库脚本代码

    下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行 在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩.需要注意的是, ...

  8. jdbc调用mysql存储过程实现代码带有输入和输出

    转载自 http://www.jb51.net/article/34747.htm 1. 创建存储过程 建立一个MySQL的存储过程 add_pro 复制代码代码如下: delimiter // dr ...

  9. SSM 配合 Mysql 数据库和代码数据源主从分离

    大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...

随机推荐

  1. jquery easy ui 1.3.4 窗口,对话框,提示框(5)

    5.1.window(窗口) 窗口我们在程序中会大量的使用,比如我们的添加.编辑都可以使用窗口实现,与winform的程序非常的类似.下面的代码是创建一个基本的窗口 $(function () { $ ...

  2. 【JSP jstl c标签】使用c:foreach 报错(警告)”test does not support runtime expressions“

    后台封装的数据是个list,传递给前台,显示如下: <c:forEach items="${userInfo}" var="user"> 用户Nam ...

  3. oracle创建临时表没有权限

    执行下面: grant create any table to 用户名称

  4. iOS Simulator功能介绍关于Xamarin IOS开发

    iOS Simulator功能介绍关于Xamarin IOS开发 iOS Simulator功能介绍 在图1.38所示的运行效果中,所见到的类似于手机的模型就是iOS Simulator.在没有iPh ...

  5. PDA移动开单系统-PDA开单,手机开单,开单APP,移动开单,移动POS开单

    仓库的送货员.收货员.仓管员人手一部PDA,门店可以直接PDA扫描商品下订单或输入编号.拼音码等下订单,订单会直接录入到仓库管理软件中. 仓管在系统中可以一目了然的查询商品库存和订单需求数量.根据库存 ...

  6. Regionals 2012 :: HangZhou

    题目传送门排行榜 一个人做了12年北大出的题,自己还是太弱了,图论的知识忘光光,最小生成树裸题写不来,Dijkstra TLE不知道用SPFA. 简单几何(点到线段的距离) + 三分 B Steali ...

  7. Log4net源码View之Logger解析

    1.简介 Logger是Log4net的三大核心载体之一,搞清楚它的意义很重大.另外两个分别是Appender和Layout.其对应关系为一个Logger对应多个Appender,一个Appender ...

  8. POJ 1155 (树形DP+背包+优化)

    题目链接: http://poj.org/problem?id=1155 题目大意:电视台转播节目.对于每个根,其子结点可能是用户,也可能是中转站.但是用户肯定是叶子结点.传到中转站或是用户都要花钱, ...

  9. TYVJ P1062 合并傻子 Label:环状dp

    背景 从前有一堆傻子,钟某人要合并他们~但是,合并傻子是要掉RP的...... 描述 在一个园形操场的四周站着N个傻子,现要将傻子有次序地合并成一堆.规定每次只能选相邻的2个傻子合并成新的一个傻子,并 ...

  10. TYVJ P1047 乘积最大 Label:dp

    背景 NOIP 2000 普及组 第三道 描述 今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年.在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力 ...