不仅定义了整数常量集,还把他们聚集成组。enum open_mode{output,input,append}; 枚举成员值可以不唯一。比如下面的point2w和point3d的值都是3.enum Points{point2d = 2, point2w,point3d = 3, point4w};不 ...
分类:
其他好文 时间:
2020-04-25 10:43:10
阅读次数:
50
A Candies "题目链接" 观察这个式子左边,这玩意就等于 $x(2^k 1)$。于是我们枚举所有的 $2^k 1$,看看是否存在 $x$ 即可。 cpp include include include include using namespace std; int T, n; int a[ ...
分类:
其他好文 时间:
2020-04-25 10:30:47
阅读次数:
54
题意:给你一个数组a,定义:若a[i]>a[i]&&a[i]>a[i-1],则a[i]为峰值,求长度为k的区间内峰值最多能为多少,并输出这个区间的左端点(区间需要将峰的左边和右边都包括) 题解:记录每个峰值,然后搞一个后缀和,从前往后枚举长度为k的区间,每次维护一下最多的峰值和区间位置即可. tip ...
分类:
其他好文 时间:
2020-04-25 00:59:03
阅读次数:
83
一、判断对象是否需要被回收 1、可达性分析算法的实现 ① 根节点枚举 ② 安全点 ③ 安全区域 ④ 记忆集与卡表 ⑤ 写屏障 ⑥ 并发的可达性分析 二、经典的垃圾收集器(内存回收算法对应) Serial、ParNew、Parallel Scavenge、 Serial Old、Parallel Ol ...
分类:
其他好文 时间:
2020-04-24 21:28:17
阅读次数:
80
方法一: 最原始,最暴力,耗时4秒,但是是最好想的思路。 生成1~9的全排列。对于每个全排列,依次枚举a,b,c的位数。枚举三个数的位数时,就相当于在9个数形成的8个空里,插入俩隔板。 所以时间复杂度大致是全排列个数9!乘以8个空里选俩的组合数:c(8,2)。 估计是10,160,640。不过按电脑 ...
搜索顺序: 从前往后依次枚举每个位置放哪个数。同时保证每一个数都比前一个数大。 1 #include <bits/stdc++.h> 2 using namespace std; 3 const int N = 30; 4 int n, m; 5 int way[N]; //方案 6 void df ...
前言 这篇文章是在不知道该写些什么,但是作为算法里最基本的东西,还是得给点排面哈。 子目录列表 2.1 枚举与模拟 1、枚举算法 枚举是基于现有知识来猜测答案的一种问题求解策略。 2、模拟算法 模拟是指通过计算机来模拟题目要求的操作。它是最简单的一类题型,但如果它真的出现在竞赛中了,也往往是最恶心的 ...
分类:
其他好文 时间:
2020-04-24 00:46:17
阅读次数:
74
问题描述 某寝室的同学们在学术完之后准备玩一个游戏:游戏是这样的,每个人头上都被贴了一张白色或者黑色的纸,现在每个人都会说一句话“我看到x张白色纸条和y张黑色的纸条”,又已知每个头上贴着白色纸的人说的是真话、每个头上贴着黑色纸的人说的是谎话,现在要求你判断哪些人头上贴着的是白色的纸条,如果无解输出“ ...
分类:
编程语言 时间:
2020-04-23 12:14:22
阅读次数:
66
题目链接:https://ac.nowcoder.com/acm/problem/14247 思想:暴力枚举两个区间的左右端点时间复杂度很高,可如果枚举一个区间,问题会简化。 维护到 i 处的异或和(pre[i],类似于桶排序中的桶,所以num数组开大点),枚举右区间加上左区间与当前区间异或值相等的 ...
分类:
其他好文 时间:
2020-04-23 01:01:16
阅读次数:
55
A. 给你一个n,解方程,(1+2+4+...+2^(k-1))*x=n,保证k>1。 枚举k,可以整除时输出一个数。 #include<bits/stdc++.h> #define all(x) x.begin(),x.end() #define fi first #define sd secon ...
分类:
其他好文 时间:
2020-04-22 20:02:07
阅读次数:
58