算法竞赛常用数据常量

1. 一百以内的所有素数:
const int prime[26] = {2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101};
2. 数学常量:
    const int PI = 3.1415927;
    const int E = 2.71828;
    const int factor[] = {1,1,2,6,24,120,720,5040,40320}; //阶乘
3. 日期:
    //每个月几天
    int days[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    //星期
    string WEEK[] = {
        "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"
    _week["MON"] = 1, _week["TUE"] = 2, _week["WED"] = 3, _week["THU"] = 4, _week["FRI"] = 5, 
    _week["SAT"] = 6, _week["SUN"] = 7;
    //月份
    string MONTH[] = {
        "JAN", "FEB", "MAR", "APR", "MAY", "JUE", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC"
    };
    _month["JAN"] = 1, _month["FEB"] = 2, _month["MAR"] = 3, _month["APR"] = 4,
    _month["MAY"] = 5, _month["JUE"] = 6, _month["JUL"] = 7, _month["AUG"] = 8, 
    _month["SEP"] = 9, _month["OCT"] = 10, _month["NOV"] = 11, _month["DEC"] = 12;

*暂时先写一部分, 随后慢慢添加

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ACM竞赛是一项编程竞赛常用算法数据结构是竞赛选手在解决问题时所经常使用的方法和工具。以下是一些常见的算法数据结构: 常用算法: 1.贪心算法:根据每一步的局部最优解来构建整体最优解。 2.动态规划:将问题划分为若干子问题,通过求解子问题的最优解来求得原问题的最优解。 3.分治法:将问题分解为若干个规模更小的子问题,分别求解这些子问题,然后合并子问题的解来得到原问题的解。 4.搜索算法:包括深度优先搜索(DFS)和广度优先搜索(BFS)等,用来穷举解空间以找到最优解。 5.图算法:包括最短路径算法(如Dijkstra和Floyd-Warshall算法)、最小生成树算法(如Prim和Kruskal算法)等,用于处理图相关的问题。 常用数据结构: 1.数组:一组相同类型的元素的集合,可以通过下标访问元素。 2.链表:一组由节点组成的数据结构,每个节点包含指向下一个节点的指针。 3.栈:一种先进后出(LIFO)的数据结构,只能在尾部进行插入和删除操作。 4.队列:一种先进先出(FIFO)的数据结构,可以在尾部插入元素,在头部删除元素。 5.堆:一种可以快速找到最大(或最小)元素的数据结构,分为大顶堆和小顶堆。 6.树:一种用来模拟具有层次结构的数据结构,包括二叉树、AVL树、红黑树等。 7.图:由节点和边组成的数据结构,用于表示各种复杂的关系或网络。 以上仅是ACM竞赛常用的一些算法数据结构,选手在解决问题时还需要根据具体情况选择合适的算法数据结构。掌握这些常用算法数据结构,并根据实际问题进行灵活运用,可以提高解题效率和竞赛表现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值