zoukankan      html  css  js  c++  java
  • 梗串

    链式前向星,双向边的nxt,to,w数组一定要开两倍!!!

    注意点和边的个数,不要混淆。

    实在不行就写vector

    数据类型

    1、方案数不取模最好开long long,避免溢出。

    2、最好做题前先预算答案范围。

    3、使用浮点数时,比较大小定义eps。

    循环:

     

    for(i=1;i<=n;++i)
        for(j=1;j<=m;++j)//不要打成i,要及时检查;要打m时不要打n

     

    初始化:

    多组数据:

    检查每个非读入变量、数组、STL容器,全部清空。

    有些容器用clear,queue一类的记得

    while(!q.empty()) q.pop();

    变量/数组:

    答案如果有负数要注意,DP的f数组初值一般不能设为0。

    不合法的可能要设为 $-infty$

    BFS:

    Dijkstra类的广搜,不管队列里什么数据,更新时都要用当前最新状态!

    倍增求LCA:

    for(i=1;i<=lgn;++i)
        for(x=1;x<=n;++x)
            f[x][i]=f[f[x][i-1]][i-1];

    for循环的两维,i代表递推顺序,从f[x][i-1]才能到f[x][i],一定要写在外面。

    STL:

    使用lower_bound等函数要写成员函数,效率较高。eg:

    multiset<int> st;int x=1;
    
    lower_bound(st.begin(),st.end(),x);//反面教材
    
    st.lower_bound(x);//正确写法,效率较高

    其它:

    题意一定要看清楚!!!有看似矛盾的句子要多看几遍,找出每句话的意思,排除矛盾。

    讨论很多情况的题目,要不重不漏,写全代码。

    写法一定要简单、直接,不同意义的变量尽量明显地分开,不要共用一个数组。

    选择自己常用、有把握的代码风格。

     

  • 相关阅读:
    Java Native Method
    SQL语句优化
    Ibatis的环境搭建以及遇到的问题解决
    Java 构建器
    SpringMVC自定义视图 Excel视图和PDF视图
    java 枚举的常见使用方法
    mysql 根据某些字段之和排序
    MFC The Screen Flickers When The Image Zoomed
    How To Debug Qmake Pro File
    Gcc And MakeFile Level1
  • 原文地址:https://www.cnblogs.com/xzs123456/p/11149902.html
Copyright © 2011-2022 走看看