数据结构相关
Conch..
记录存档学习相关 努力成为不拖拉的上岸咸鱼Orz
展开
-
Josephus问题(Ⅲ)
题目描述 n个人排成一圈,按顺时针方向依次编号1,2,3…n。从编号为1的人开始顺时针"一二三...."报数,报到m的人退出圈子。这样不断循环下去,圈子里的人将不断减少。最终一定会剩下一个人。试问最后剩下的人的编号。 本题的数据规模更具有挑战性,尝试更通用且高效的算法。 输入 不超过1000组数据。 每组数据一行,每行两个正整数,代表人数n (1 <= n < 231)和m(1<=m<=1000)。 输出 每组输入数据输出一行, 仅包含一个整数,代表最后剩下的人的.原创 2021-11-28 23:52:41 · 2150 阅读 · 2 评论 -
Josephus问题(Ⅱ)
题目描述 n个人排成一圈,按顺时针方向依次编号1,2,3…n。从编号为1的人开始顺时针"一二"报数,报到2的人退出圈子。这样不断循环下去,圈子里的人将不断减少。最终一定会剩下一个人。试问最后剩下的人的编号。 n很大,直接模拟题意不行,请找出规律。 输入 不超过1000组数据。 每组数据一行,每行一个正整数,代表人数n。 (1 <= n < 231) 输出 每组输入数据输出一行, 仅包含一个整数,代表最后剩下的人的编号。 样例输入Copy 7 2 样例输出Co...原创 2021-11-28 23:42:25 · 876 阅读 · 1 评论 -
Josephus问题(Ⅰ)
题目描述 n个人排成一圈,按顺时针方向依次编号1,2,3…n。从编号为1的人开始顺时针"一二"报数,报到2的人退出圈子。这样不断循环下去,圈子里的人将不断减少。最终一定会剩下一个人。试问最后剩下的人的编号。 要求程序模拟题意来实现。 输入 不超过1000组数据。 每组数据一行,每行一个正整数,代表人数n。 (1 <= n <= 1000) 输出 每组输入数据输出一行, 仅包含一个整数,代表最后剩下的人的编号。 样例输入Copy 7 2 样例输出Copy 7 1..原创 2021-11-28 23:38:14 · 1280 阅读 · 1 评论 -
复杂度分析(Ⅱ)
题目描述 有如下代码段(n为正整数): i=1; while(i++<n){ j=1; while(j++<i){ k=1; while(k++<j) printf("\n"); } } 问printf语句共执行了几次?这段代码执行完以后i+j+k值为多少? 输入 由多行组成,每行一个整数n, 1<= n <= 3000 输出 对每一行输入,输出对应的一行,包括空格分开的两个整数,分别代表printf语句的执行次数以及...原创 2021-11-28 22:42:33 · 293 阅读 · 0 评论 -
复杂度分析(Ⅰ)
题目描述 分析如下代码 for(i=1;i<n;i++) for(j=1;j<i;j++) for(k=1;k<j;k++) printf("\n"); 问printf语句共执行了几次?这段代码执行完以后i+j+k值为多少? 输入 由多行组成,每行一个整数n, 1<= n <= 3000 输出 对每一行输入,输出对应的一行,包括空格分开的两个整数,分别代表printf语句的执行次数以及代码执行完以后i+j+k的值, 如果值不确定,输出"RAND...原创 2021-11-28 22:40:05 · 851 阅读 · 0 评论