zoukankan      html  css  js  c++  java
  • SOJ和FOJ的比赛

      昨天做两场线上比赛,FOJ和SOJ,都只做了两题。

    FOJ


    Problem 2074 Number of methods(数学)

    有一排石子,每次只可取走一个,第一次可取任取一个,之后取被取走石子相邻位置的石子,有多少种取法?

    一开始还看错题意,没注意"只能取被取走石子相邻位置的石子",WA了一次。

    若有n个石子,我们取走第i个石子,左边剩下i-1,右边剩下n-i个石子,之后我们每次只能取左边最右边的石子或右边最左边的石子,左边要取i-1次,右边要取n-i次,

    总共要取n-1次,若设左取一次的代号为0,右取一次的代号为1,取法就是一组由i-1个0和n-i个1组成的组合数。

    Problem 2072 Count(数据结构,二分搜索)

    查询一个正整数组成的数组某段区间某个数出现的次数。

    建立一个由n个数为索引的链表,插入各个数在数组中的序号,查询的时候直接二分搜索关键值所在的链表。

    用vector做的时候忘了clear了,WA了两次.

    SOJ

    Driving Range(最小生成树)

    求最小生成树的最长边,由于点较多,克鲁斯卡尔比较好。

    WA了10多次还是没做出来,晚上睡觉的时候猛然发现并查集的合并写错了,早上起来的时候想交居然交不了,只好去hdoj交,果然A了

    Frosh Week(树状数组)

    求一个数列转换成有升序至少需要多少次相邻交换,一次相邻交换只能减少一个逆序数,而升序数列的逆序数是0,所以实际上就是求逆序数。

    可用归并排序(以前做过,忘了。。。。)和树状数组做。

    KOMPIĆI(位运算)

    在一个数列中,有多少对整数有相同数字。

    因为数字只有0~9,数字形式总共也只有1023种,转换所有的整数表示形式,同一种形式的有  a[i]*(a[i]-1)/2 对,有相同数字的不同的形式有a[i]*a[j];

  • 相关阅读:
    Python进阶03 模块
    Python进阶02 文本文件的输入输出
    Python进阶01 词典
    Python基础10 反过头来看看
    Python基础09 面向对象的进一步拓展
    Python基础08 面向对象的基本概念
    Python基础07 函数
    Vuex源码分析(转)
    Vue2.x双向数据绑定
    Angular2的双向数据绑定
  • 原文地址:https://www.cnblogs.com/xchaos/p/2417672.html
Copyright © 2011-2022 走看看