蓝桥杯
qq789045
这个作者很懒,什么都没留下…
展开
-
幸运数
这道题不知道怎么搞的,既然1是幸运数,应该把位置为1的倍数的数都删了呀。初始化的时候得初始化奇数两个游标,一个是新数列的,一个是原数列的。由于结果只有n和m之间,大于n的不用管#include#include#include#include#include#include#includeusing namespace std;#define MAXN原创 2017-02-27 23:48:45 · 625 阅读 · 0 评论 -
核桃的数量
#include#include#include#include#include#include#includeusing namespace std;int gcd(int a, int b){ if (b<a) { int temp = a; a = b; b = temp; } while (b != 0) { int temp = a%b;原创 2017-02-19 23:45:59 · 377 阅读 · 0 评论 -
带分数
先枚举前面的整数,然后剩下的数字集中,dfs来枚举排列,枚举分子长度。#include#include#include#include#include#include#includeusing namespace std;bool isUsed[15];int num[15];int ans;int a, n;int leftCount;int pow1原创 2017-02-20 00:34:24 · 294 阅读 · 0 评论 -
剪格子
从左上角开始dfs#include#include#include#include#include#include#includeusing namespace std;#define MAXN 15int n, m;int map[MAXN][MAXN];bool isUsed[MAXN][MAXN];int sum;int curSum;int g原创 2017-02-20 02:01:18 · 341 阅读 · 0 评论 -
翻硬币
#include#include#include#include#include#include#include#includeusing namespace std;char s1[1010];char s2[1010];int main(){ scanf("%s", s1); scanf("%s", s2); int count = 0; for(int原创 2017-02-20 02:24:29 · 322 阅读 · 0 评论 -
连号区间数
记录每个开始的数,从左到右最小最大的数,如果最大减最小等于区间长度,ans++#include#include#include#include#include#include#includeusing namespace std;#define MAXN 15int arr[50010];int n;int main(){ scanf("%d", &n原创 2017-02-26 21:57:27 · 360 阅读 · 0 评论 -
买不到的数目
从小到大递推动归,初始值a,b能组成,然后递推出所有组合。#include#include#include#include#include#include#includeusing namespace std;#define MAXN 1000005bool dp[MAXN];int main(){ int a, b; memset(dp, 0,原创 2017-02-26 23:03:41 · 307 阅读 · 0 评论 -
大臣的旅费
这道题没说数据量,最后一组数据总是过不了,数据量太大了,要用邻接表节省内存。一棵树,随便一个点深度dfs,最长的路径肯定经过树根,树根到终点肯定是最远两个点的一段,所以在再终点做dfs。#include#include#include#include#include#include#includeusing namespace std;#defi原创 2017-02-27 12:57:31 · 689 阅读 · 0 评论