首先先定义个枚举,后续都会用到这个枚举。 [Flags] public enum BorderSides { Left = 1, Right = 2, Top = 4, Bootom = 8 } 1.将枚举转换为整数 我们通常将枚举转换整数,可以将枚举先转化未object类型然后再转为整数类型。 1 ...
题目描述: Input: Output: 题意:给定n个数,求出使得总和的绝对值最小的最小集合,该集合是给定的n个数的子集,并输出这个最小总和和集合内的元素个数,在满足总和最小的前提下要求元素个数最小。 思路:这道题如果用暴力来写,由于每个数都有两种情况,故硬枚举就是2^n的效率,但n是小于等于三十 ...
分类:
其他好文 时间:
2020-04-25 13:01:03
阅读次数:
61
不仅定义了整数常量集,还把他们聚集成组。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