sparkyen / Gitalk-Comment

用于周总结网站存储评论
0 stars 0 forks source link

第十四周总结&&第十五周计划(2020.5.24) - CTGU ACM #47

Open sparkyen opened 4 years ago

sparkyen commented 4 years ago

https://ctguacm.work/2020/05/24/%E7%AC%AC%E5%8D%81%E5%9B%9B%E5%91%A8%E6%80%BB%E7%BB%93&&%E7%AC%AC%E5%8D%81%E4%BA%94%E5%91%A8%E8%AE%A1%E5%88%922/

sparkyen commented 4 years ago

肖焰
我以为上周发上去了,后来才发现我上周网不好没有传上去周总结,暴风哭泣

前两周总结:
前面打完比赛后发现我自己的学习方式的确有问题,但是一直忽略了,也没人给我提出来,的确是上周鲍洋还有自己比完校赛体会到了。就是学习算法没有系统的了解某个东西,比如我学动态规划,可能只是今天看到了LCS去学一下,明天看到了长链剖分去学一下,但是根本就不系统。这就导致了尽管我打了很多比赛,补了很多题,题目一变化或者稍微深入一点,我就做不出来了,容易卡壳。
所以后面我和黄勇斌讨论的时候就约着一起做紫书,互相交流学习后,发现的确帮助很大,大概有那么一个多星期,我和他天天都有电话讨论题目,学习DAG上的动态规划,更加深刻的理解了一些状态转移和图的关系
上周主要完成比较重要的就是完成毛概的视频当作社会实践作业交上去了

下周计划:
会慢慢把重心放到期末复习上,比如计组的视频,java的回播和作业,这段时间都有坚持在看
然后就是Ardunio的板子应该后天到了,需要完成的作业也要按时交上去。其他科目的话,还没结课前就坚持听课,不要偷懒。

说实话,我真的觉得这届大一很幸运,起码有人在前面给你们指明方向,告诉怎么去做比较好。从去年暑假回顾到现在,我自己感觉我学习算法走了很多弯路,有段时间也是光满脑子空想不做题,但是那会都没有人给我指出来,所以我也得承认我算法不太行,还是有很多地方要向郑依鸣,应承刚他们学习。大二的时候我花很多精力在集训队的管理上,有时候反而为自己考虑的很少,甚至影响了自己功课,有点憨憨的。不过大一打个比赛要催,回帖也要催,写个题目也是推三阻四的,说真的对不起我跟郑依鸣的付出,之后也要换届了,所以我们估计可能也会慢慢淡出管理。不过有时间的话,算法还是要好好钻研的,奥里给!

20161242 commented 4 years ago

陈洋 本周总结: 1.本周为考试认真做了复习 2.课业上的梳理 3.参加了“数维杯”数学建模竞赛,完成了一个流程,感觉收获不少,对于科技论文的写作有了一个了解,也应用了代码 4.算法上有些疏忽学习了,这是不足的。 下周计划: 1.完成周任务 2.坚持每天算法训练一到两道题 3.巩固bfs与dfs 4.四科备考复习 5.完成其他论文

Eternal-night commented 4 years ago

陈卓

本周总结

1.准备了线代和大物的考试\ 2.leetcode每日一题和周赛

下周计划

1.周任务\ 2.巩固下数据结构\ 3.继续leetcode每日一题

qiyuan11111 commented 4 years ago

姓名:郑依鸣 本周总结: 1.这周仍然开启狂暴模式学算法(别和我提复习,不存在的),本周我大概打了4场比赛,先说说第一场的牛客赛吧,两道签到题做得很爽,第三道数论题目真的被我捡了大便宜,大概是上上周学了一周的数论分块+枚举变形+莫比乌斯反演吧,先不提莫比乌斯反演,我觉得枚举变形真的是一个很牛批的东西,比如按照这道题来看

Image of Yaktocat

很明显上面是枚举每一个子串,然后对于每一个子串求卷积,那么我们应该注意后面的a[i]a[j], 对这才是关键,想一想什么时候会发生a[i]a[j],当然是a[i]和a[j]都在同一个被枚举的子串中,那么与其枚举每一个子串,倒不如枚举a[i]*a[j],原式就可以很nice的进行变形

图片替换文本

上图很大我也没得办法,xy请把一个叫cold-stone.css的css文件中第258行的img属性里面的width:100%给去掉好吗。。 @Wizarderror 总结一下应该就是被枚举者提前,后面就是算被枚举者的系数,这样理解和算1到n所有因数的数量之和是一样的(当然用欧拉筛也可以用O(n)复杂度筛出因数个数函数这个积性函数的值)

2.最气的还是周六下午比赛的topo排序好吗,校赛原题,当时用校赛的代码死活过不去,最后结束了都没过这道题(还被徐老师批了一顿我也是服了),最后还是上的oi-wiki系统的学了topo排序的奇淫巧技。

bool toposort() {
    q = new queue();
    for (i = 0; i < n; i++)
        if (in_deg[i] == 0) q.push(i);
    ans = new vector();
    while (!q.empty()) {
        u = q.pop();
        ans.push_back(u);
        for each edge(u, v) {
            if (--in_deg[v] == 0) q.push(v);
        }
    }
    if (ans.size() == n) {
        for (i = 0; i < n; i++)
            std::cout << ans[i] << std::endl;
        return true;
    } else {
        return false;
    }
}

大概思想就是删边,最后判断图里面是否还有边,实际实现代码可以用入度的值拉判别,topo排序用的Kahn 算法,具体我在这也说不行,详情可以看https://oi-wiki.org/graph/topo/ 好的,翻过来说一下校赛那道topo排序,过题数为0,当时就觉得不对劲,最后我对拍了一下后台数据,的确出锅了,最后还是花了一晚上和谢佳丽以及徐老师讨论,的确我得到的校赛那道题当时的标准代码

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int G[110][110],n,m,a,b;
int vis[110],c[110], topo[110], t;

bool dfs(int u){
    vis[u] = -1; 
    for(int v=1; v<=n; ++v) if(G[u][v]){
        if(vis[v] == -1) return false; 
        else if(!vis[v] && !dfs(v)) return false;
    }
    vis[u] = 1; topo[--t] = u;
    return true;
}

bool topoSort(){
    t = n;
    memset(vis, 0, sizeof(vis));
    for(int u=1; u<=n; ++u) 
        if(!vis[u] && !dfs(u)) return false;
    return true;
}

int main(){
    while(~scanf("%d %d",&n,&m) && n+m){
        memset(G, 0, sizeof(G));
        for(int i=0; i<m; ++i){
            scanf("%d %d",&a,&b);
            G[a][b] = 1;
        }
    topoSort();
      printf("%d",topo[0]);
      for(int i=1; i<n; ++i)
        printf(" %d",topo[i]);
        printf("\n");
    }
    return 0;
}

研究一波发现,这段代码虽然最后的确是一个topo序,但是却不能满足题目的要求:不可比的两个数序号大的在前,根据学姐的意思估计是本来要出个spj题目,但是徐老师不会弄?然后时态紧急没有对拍就出锅了。。。。 的确如果topo排序涉及到不可比的两个数的顺序,需要的还是正宗的Kahn 算法+priority_queue,要不是因为周六下午那道题,这个锅我还没发现,不过也算刷新了topo观吧,有些收获(其实topo就是板子题啊,果然是板子题做得少,现在的板子题,熬夜都要搞清楚,以后topo序如果再错就请全集训队喝芋泥波波奶茶)

3.最后说一下今天的比赛,没错我是背着集训队偷偷参加的,过了6道题59名,这次做题思路和思维格外流弊(除了某些sb语法错误导致一直wa以外),一道题是树形dp,树形dp已经遇到了3次并补了3次,还有一题是思维预数论的结合体,先质因子分解,最后是质因子按需合成,这个题本来很好想,最后的模式也是就思维题比较重要的多桶拿球模型,可惜中间特判写错了(本来应该写continue却写成了return 0,你说我是不是傻)幸亏最后发现了才过的,还有一题是最后一分钟过的,是一道集合操作: 有一个集合S,刚开始是空集,现在有3种操作。 1.往集合中添加x,如果集合中已经存在x,则不添加。 2.从集合中删除x,如果集合中不存在x,则不删除。 3.查询大于等于x且不在集合S中的最小的正整数 这题的确不难,先把所有需求的x放到一个vector里面,然后离散赋值序号,两个相邻的值序号相邻,不相邻的值序号隔一个(相当于把两个数中间的区域赋一个序号),最后用set存不在集合内的数,对集合的删除相当于对set的增加,于是查询大于等于x且不在集合S中的最小的正整数变成了查询大于等于x且在set中的最小的正整数,用set自带的lower_bound可以giao,题目很快搞出来了,但是一直过不了,最后发现if语句判断指令类型的条件写错了,因此搞了一小时,最后我能找出来我也是佩服自己。

很奇怪的就是没看见树链剖分或者lca或者强连通分量的题目,唯一一道思维题被我用线段树强搞。。。。结果竟然搞出来了我自己都觉得不可思议。

下周计划: 1.不复习是不可能的,这周我把计组搞了两章,计网也搞了两章,现在就是javaweb我有点慌,不知道javaweb考不考试。 2.继续搞莫队啊,树上莫队啊,真的是毒瘤算法,但是莫队可以解决所有区间问题的存在还是很诱人啊,毕竟我这几场比赛每次看到“先用树上带修改莫队......”,整个人都不好了。。。。。

Xu-Luheng commented 4 years ago

徐璐衡: 上周总结: 1.终究还是违背了一天补一题的计划。对不起我实在是被突如其来的考试和论文搞到慌张。补过了的只有两道题,但尽管如此也挺费劲。先自己打出来,然后尝试去运行的时候总也运行不起来,有许多细节方面的问题。有时候实在不行就照着标程改,改得几乎都没什么区别了还是过不了,最后发现变量设置有问题。收获还是有的,对dfs的理解好了一些。 2.最初整论文,后来发现论文没有考试紧急,就又连忙折腾复习,整线代,把论文都堆到了周末。按时作息的计划也凉凉,连熬了几天大夜,人都傻掉,发现自己真的没有高中能熬了,实在扛不住。考试结果无法预测,差一道大题,过程也很可惜没提交上去。 3.由于考试原因,没打比赛。 4.这周状态其实不错,比较积极,也没有很浮躁。一开始家里突发事件有影响到自己,但只是有点突然,没有准备,也实在赶得太不是时候了。这件事很大程度上对自己有利,我状态的保持也有得益于此。下周继续加油。 下周计划: 1.保持良好状态,早睡早起锻炼身体。 2.白天的空挡补大心论文,800*7+2000实在是不能堆一块写,这周尽量整完。 3.周任务依旧交给夜晚。 4.对dfs依旧处于半会不会的状态,如果给我个dfs的新题目我估计还是做不出来,打算接着看,并把周任务里用到的一个算法精细地学一学。

hyb1041739742 commented 4 years ago

黄勇斌: 上周总结: 1.整体就是在搞大物,因为之前学的比较水,就想要临时冲下。线代基本没搞,因为我觉的我线代应该可以,结果后来才发现自己错了一个根本性的问题:在消矩阵的时候,要么只用行变换,要么只用初等列变换,不能杂交。。。因为当时自己是寒假是自学的,看的是外国的课程,而外国的课程一般偏向于理论,我自己实际操练很少,所以之气没发现这个问题。 2.比赛的话因为想复习就都请假了。。。最近两周好像基本没怎么打过比赛。 下周计划: 1.下周考数据结构和物理实验,但是我觉的这个不用复习 2.开始重新搞算法 3.牛客每日一题

LJR233 commented 4 years ago

刘金瑞 上周总结: 1.因为要复习和考试所以比赛都请假了 2.数据结构学到了图里面的dfs和bfs,正好把他们巩固了一遍 下周计划: 1.把c++的实训作业做完,准备考试 2.继续学习算法,参加周常的比赛,完成周任务 3.大心的论文写一篇

NSWDGJC commented 4 years ago

鲍洋 上周总结: 上周主要在速成线代,反正考试算是过了,暑假再看下估计差不多,然后就是看数据结构的书,那个上面小知识点太多了,基本一周都在复习吧,然后比赛因为考试冲突了一个,然后周六考试周五就用来复习了,这周就没写题,基本事件用在复习和写论文上了。 下周安排: 主要还是复习吧,要考的东西比较多,然后有时间的话打打比赛,等这阵子过去了基本就没啥其他的事了,主要精力就可以放到算法上了。

kkk-x commented 4 years ago

孔维暄 上周总结: 1.上周主要在写论文和复习线代,然后比赛因为要复习就请了假,对于算法的学习上周比较水

下周计划: 1.补网课,复习,感觉好像各科都快结尾了,然后赶紧写大心的论文 2.把PS的作业做了,感觉虽然不难,但有点费时间 3.这周的比赛要按时参加了,然后完成周任务,继续学习算法

Amaranth-zf commented 4 years ago

朱帆 第十四周总结: 这周每日做题的计划没有达成,但是相关题解还是看了一些,对DFS BFS不同题型也知道了大致的操作方法。把时间拿去准备考试和期末材料了。

第十五周计划 这周没有来得特别急的考试了,每天做题计划应该能完成。剩下的科目每天少量的进行复习,到了考试周应该就没那么紧张,可以留点时间给算法。

edisoncgh commented 4 years ago

陈冠华

上周总结

上周基本上除了准备考试其他事都没管,线代好像还炸了,真是难受,知识也落下不少

下周计划

继续开始每日一题的训练,还有LC的单双周赛。另外有机会把数据结构的知识从头刷一次,也算是给期末考试做预热了

Osilly commented 4 years ago

黄文轩 上周总结: 上周考两门没咋学的线代和物理,慌的一批,时间都来翻了翻书,结果发现网上考试不是太难,感觉挺亏,还鸽掉了两场比赛,亏亏亏 下周计划: 复习是不存在的,要写题学算法了,在家待的斗志都没了,先把蓝桥杯周任务写了,然后下周开始每周至少一个算法总结(立个flag),写博客丢链接,没做到就来喷我(大雾)

yihaibin1 commented 4 years ago

上周总结: 上周两门考了线代和大物,没搞算法没做题没比赛,感觉有点空。。。 下周计划: 时间过的真快啊啊啊啊,,马上下学期就要结束了,考完两门课后时间多了很多,继续系统性的学习算法和刷题,准备蓝桥。

jin-feng commented 4 years ago

刘锦锋 上周总结:1.这周主要还是在看javaweb相关的视频,发现知识面试真的广,不过自己的实际操作很少,很多知识都只处在了解阶段,实际操作写代码还是需要加强练习的。 2.完成了自己的毛概实践报告。 3.英语选修考试 4.这个星期的比赛,完全不在状态,心不在焉的感觉,算法学习还是有待加强的。 下周计划: 1. 完成计网实验,开始计网复习 2. 完成计组第一个实验,并复习 3. Javaweb开始节课的准备了,具体还是需要大量准备的 4. 选修课的考试。 5. 完成慕课上的作业。

backdiy commented 4 years ago

梁立 上周总结 1.这周基本上都是在看数据库和计算机网络,上课有点听不懂,下课就疯狂复习,还有就是毛概网课作业还没做完,落下的有点多,花时间补了大半。 2.完成了毛概社会实践报告 3.比赛也只做了签到题,学习还得加强 下周计划 1.挤出时间补上周的比赛题 2.复习计算机网络,做实验,准备毛概考试 3.做java和数据库设计