编程C,C ++,Java,PHP,Ruby,图灵,VB
计算机科学加拿大 
编程C,C ++,Java,PHP,Ruby,图灵,VB  

用户名:   Password: 
 登记登记   
 昨天发现了CCC ......
指数 -> 竞赛
转到页面 1, 2, 3  下一页
查看上一个主题 可打印的版本下载主题订阅本主题私人信息刷新页面 查看下一个主题
作者 信息
R691175002




邮政发布: 2008年2月21日星期四晚上12:30  帖子主题:昨天发现CCC ......

我相信我的电脑科学老师提到我们可能会在几周前参加比赛,然而,周二他让我们知道我们都在第26届会议上注册了CCC。我是一个能力的程序员,要诚实,我真的不认为我非常适合这些问题。我一直在疯狂地练习(以某些其他科目为代价......)和尽可能多地阅读,但是一周没有太多准备时间。我不一定想进入第2阶段,但我不想让自己难堪。我在11年级,所以如果我们明年竞争,我应该更好地做好准备,但是我不可思议,我是否应该参加高级比赛的初级。

我已经设法在Usaco培训网站上完成了所有1.1和1.2的问题,除了挤奶奶牛(我无法在时间限制,任何提示?)以及试图强迫动态编程和图形理论到我的头部。我非常有信心我可以在初级测试中获得4-5个问题,但我只对高级测试中的3 / 5-4 / 5确信。我星期四和星期五有半天,所以我会尝试一些过去的测试和练习更多。

有关如何尽快准备的任何建议,或者在哪个测试采取的建议?由于标准库容器,我的首选语言是Java,但是已经练习了一下我觉得切换到C ++,因为它更快地编写了这些问题(并更快地执行)。你带来了什么样的书面材料?我正在考虑一个日历,闰年的规则,线路交叉路口和动态规划的一些论文。

谢谢
赞助
赞助
赞助
赞助
笨人




邮政发布: 2008年2月21日星期四12:45  帖子主题:Re:昨天发现CCC ......

引用:
你带来了什么样的书面材料?我正在考虑历时,闰年的规则,
你是认真的吗?您最肯定不需要日历....也不需要闰年的规则,如果有关于这些事情的问题(ad hoc),他们将提供您需要的所有信息。它是一个好主意,带来参考书......但是究竟是我不确定的名字,加上你的USB上的API副本(自从你正在使用Java)

如果你真的认为你还没准备好,请去初级,至少你会有机会获得前20名,除非你对这位高级感到非常有信心!没有伤害,你只会获得经验,没有什么可失去的。 (初中是一个大跳的人)

你也应该看看前一年的高级和初级问题,了解它是什么样的......而且是 托尼的博客 建议,完成3个小时的时间,看看你会得到多远 眨眼 best of luck!

PS。如果你在高级获得了大约4个完美的问题,那么你很可能被邀请到2阶段,但我认为今年将是不同的....
托尼




邮政发布: 2008年2月21日星期四上午9:02  帖子主题:Re:昨天发现CCC ......

你可以在休息日看看两场比赛的问题,并决定哪一个上诉。当我写下我的初级CCC时,我随着时间的推移完成了所有问题,所以我开始写高级问题。初级和高级的三个问题重叠(至少回到了)。在我的老师标志着我两个独立的行为之后,我决定将哪个标记提交。
最新来自compsci.ca/blog: Tony's 编程博客。 DWite - A. 编程竞赛.
R691175002




邮政发布: 2008年2月21日星期四8:40  帖子主题:Re:昨天发现CCC ......

您的程序必须完成测试数据多长时间?我在〜1.5h中完成了2007年S1-S4,完成(包括测试数据测试)。 S1-S3很好,但我不想让我的S4在大型测试用例上超过几分钟。我用了蛮力,方法所以我将更多地阅读动态编程。我还没有尝试过S5,我可以强迫它,但我知道这不是一个好的解决方案。

对于S4是通过添加其父节点的值来将来自每个节点的路径数存储到图块1的正确解决方案?据我所知,这将是一个动态的解决方案吗?
我想不出如何为S5的动态解决方案看起来如何看,在我看来,我想到的方式会吸收太多的记忆(存储最佳位置,为已经抛出球的每个组合扔球)。
我今晚晚些时候会尝试S4和S5,看看它是如何进行的,否则在测试中,我可能只是蛮力,并采取我可以得到的任何标记。

(链接到2007年高级CCC: http://cemc.uwaterloo.ca/ccc/2007/seniorEn.pdf );
笨人




邮政发布: 2008年2月21日星期四8:48  帖子主题:Re:昨天发现CCC ......

引用:
您的程序必须完成测试数据多长时间?
1秒通常,对于Java(也许也是如此?)可能3秒时间
托尼




邮政发布: 2008年2月21日星期四:下午9:05  帖子主题:Re:昨天发现CCC ......

R691175002 @ Thu 21,2008 8:40 PM写道:
您的程序必须完成测试数据多长时间?

5秒钟,也许。更有意义的意味着你正在做一些可怕的错误。通常它应该在一秒钟内。
最新来自compsci.ca/blog: Tony's 编程博客。 DWite - A. 编程竞赛.
Coding_Guy.




邮政发布: 2008年2月23日星期六8:54  帖子主题:Re:昨天发现CCC ......

伙计们我也有一些问题,就像Lodng所需的是能够编写动态问题,因为我不能做到这一点。

还可以把自己的笔记本电脑带到学校,因为我们的计算机在学校吮吸。

我目前下载了来自本网站的动态编程的教程,但其他人也知道任何好消息来源,我可以在哪里得到它们,并且不会过于复杂

提前致谢
OneOffdriveByposter.




邮政发布: 2008年2月23日星期六晚上10:10  帖子主题:Re:昨天发现CCC ......

备忘录是一种方法可以通过DP解决问题:
http://9tt6y.icu/v3/viewtopic.php?t=9581&postdays=0&postorder=asc&start=16
赞助
赞助
赞助
赞助
Coding_Guy.




邮政发布: 2008年2月23日星期六下午3:51  帖子主题:Re:昨天发现CCC ......

谢谢人,我肯定会阅读这个,但任何人都知道Java或C ++的东西,因为我从未学习过图灵 问题
Stealtharcher.




邮政发布: 2008年2月23日星期六下午4:59  帖子主题:Re:昨天发现CCC ......

图灵是半冗长的,如果你被忍受了一些事情,它应该很容易地阅读:

1.对伪代码进行大部分。

2.放在我们的cout。

3.循环循环以语句结束循环/结尾结束

4.案例是我们的交换机语句
R691175002




邮政发布: 2008年2月23日星期六5:07 PM  帖子主题:Re:Re:昨天发现CCC ......

Coding_Guy. @ 2008年2月23日星期六8:54写道:
伙计们我也有一些问题,就像Lodng所需的是能够编写动态问题,因为我不能做到这一点。
我目前下载了来自本网站的动态编程的教程,但其他人也知道任何好消息来源,我可以在哪里得到它们,并且不会过于复杂
提前致谢

是的,我的动态编程也有一些麻烦。这是一下它的点击我的教程:
http://mat.gsia.cmu.edu/classes/dynamic/dynamic.html

如果您没有获得第一个示例,请继续进行。第二个例子是对我有意义的例子。分析了第一个示例中的表格如何获得可能有所帮助。在纸上进行纸张,按照指令生成最佳解决方案的表,然后检查您的表格。

它是你“得到的”,然后是它的罚款。所说,我不舒服地尝试将动态编程应用于3小时比赛中的S5。我将最终迫使暴力迫使这种问题进行部分痕迹。
R691175002




邮政发布: 2008年2月23日星期六晚上9:08  帖子主题:Re:昨天发现CCC ......

在这里不确定双重岗位政策,但新问题:

备忘和动态编程之间的差异是什么? Memoization只是动态编程的子集吗?

我解决问题S4的解决方案(成功完成了1S以下的所有测试):
代码:
   公共静态int getConnect(int n) {
                if (memory.get(n) != null) {
                        return memory.get(n);
                }
               
                int c = 0;
               
                if (con.get(n) != null) {
                        for (int i = 0; i < con.get(n).size(); i++) {
                                c += getConnect (con.get(n).get(i));
                        }
                }
               
                memory.put(n,c);
               
                return c;
        }

递归地确定第一方形的路径数。我知道这是一个备忘录的一个例子,但它也是动态编程的一个例子,因为它使用先前解决了问题以找到其解决方案? (当前节点的路径=带有节点1为1的所有先前节点的路径之和。
烦扰




邮政发布: 2008年2月23日星期六晚上9:41  帖子主题:Re:昨天发现CCC ......

R691175002 @ 2月23日星期六,2008年9:08写道:
在这里不确定双重岗位政策,但新问题:

备忘和动态编程之间的差异是什么? Memoization只是动态编程的子集吗?

我解决问题S4的解决方案(成功完成了1S以下的所有测试):
代码:
   公共静态int getConnect(int n) {
                if (memory.get(n) != null) {
                        return memory.get(n);
                }
               
                int c = 0;
               
                if (con.get(n) != null) {
                        for (int i = 0; i < con.get(n).size(); i++) {
                                c += getConnect (con.get(n).get(i));
                        }
                }
               
                memory.put(n,c);
               
                return c;
        }

递归地确定第一方形的路径数。我知道这是一个备忘录的一个例子,但它也是动态编程的一个例子,因为它使用先前解决了问题以找到其解决方案? (当前节点的路径=带有节点1为1的所有先前节点的路径之和。


备忘录可以被认为是动态编程,因为它利用了一个问题的重叠问题,是动态编程的珠宝之一。在S4的一个问题上,对于去年的高级竞争,它将足够好,在没有时间的情况下完美得分。但是,如果您可以使用递归和备忘录自上而下地编写解决问题,您可以在那里左右进行解决方案,以解决它的动态编程迭代。
R691175002




邮政发布: Sun 24,2008 12:02 AM  帖子主题:Re:昨天发现CCC ......

所以动态编程类似于备忘,但没有递归?

例如,如果我迭代地填充到节点1的可能路径阵列,直到它到达节点n就会动态编程?
烦扰




邮政发布: Sun 24,2008 2008年12:20 PM  帖子主题:Re:昨天发现CCC ......

R691175002 @ Sun 24,2008 12:02 am写道:
所以动态编程类似于备忘,但没有递归?

例如,如果我迭代地填充到节点1的可能路径阵列,直到它到达节点n就会动态编程?


嗯,您可以考虑解决问题的动态编程方法,因为这两种方式都牺牲了速度的空间。如果您可以弄清楚您的问题的重新发生关系,那么您可以通过Memoization轻松地将其递归地编程。如果你被困在找到自下而上的方式,有时只需使用备忘,就足够好了。

我建议参加阅读: http://acm.uva.es/p/Art_of_Programming_Contest_SE_for_uva.pdf. 它有一个关于动态编程(其中)的简要份点,您可以解决一些简洁的例子。
从上一个显示帖子:   
   指数 -> 竞赛
查看上一个主题 告诉一个朋友可打印的版本下载主题订阅本主题私人信息刷新页面 查看下一个主题

13  [ 33 Posts ]
转到页面 1, 2, 3  下一页
跳到:   


Style:  
搜索: