ICode9

精准搜索请尝试: 精确搜索
  • 【YBTOJ】货币系统2021-07-08 12:00:51

    思路: 用一个类似筛的东西,把不可以表示的筛出来,那就是B的货币系统 c o d e code code #include<iostream>

  • AtCoder Regular Contest 121 D - 1 or 22021-06-05 17:32:44

    题目链接:点我点我 Problem StatementSnuke has a blackboard and NN candies. The tastiness of the ii-th candy is aiai. He will repeat the operation below until he has no more candy. Choose one or two of his candies and eat them (of course, they disappear). The

  • ARC121D 1 or 2(思维)2021-06-03 22:33:38

    ARC121D 1 or 2 解题思路 首先考虑简化问题。 假设只能一次吃两个糖,那么显然可以贪心。 我们假设 \(n\) 是偶数,那么最优的就是排完序后首尾相加,依次向里靠拢。简单证明一下: 假设有 \(a<b<c<d\),那么 \(\max(a+d,b+c)\leq\max(a+c,b+d)\)。\(\min\) 同理,所以我们的贪心是最优的。 我

  • [CF1526F]Median Queries2021-05-30 12:32:45

    Median Queries 题解 首先,我们得找到两个相差不超过 ⌊ n − 1 3

  • LeetCode 1014. 最佳观光组合2021-05-29 18:31:50

    题目描述 给你一个正整数数组 values,其中 values[i] 表示第 i 个观光景点的评分,并且两个景点 i 和 j 之间的 距离 为 j - i。 一对景点(i < j)组成的观光组合的得分为 values[i] + values[j] + i - j ,也就是景点的评分之和 减去 它们两者之间的距离。 返回一对观光景点能取得的

  • -1787. 使所有区间的异或结果为零2021-05-25 09:59:53

    题目描述 给你一个整数数组 nums​​​ 和一个整数 k​​​​​ 。区间 [left, right](left <= right)的 异或结果 是对下标位于 left 和 right(包括 left 和 right )之间所有元素进行 XOR 运算的结果:nums[left] XOR nums[left+1] XOR … XOR nums[right] 。 返回数组中 要更改的

  • PTA乙级10122021-05-17 20:30:10

    注意点 第二个交错求和要用个数来记录是否有数字满足 而不是判断是否为0 否则有一个点不过 AC代码 #include<iostream> using namespace std; int a1,a2,a3,a4,a5; int fl=1; int maxx=-1; int i,j,k; int main() { int n; cin>>n; int x; while(n--) { cin>>x;

  • poj1386(判断一个有向图是否存在欧拉回路)2021-05-14 23:57:41

    1.欧拉回路:定义:经过图(有向图或无向图)中每条边一次且仅一次并且行遍图中每个顶点的回路( 闭合的欧拉路径,即一个环,保证每条边都通过且仅通过一次)。 2.问题2:判断一个图是否有欧拉路径: (1)图G是连通的,无孤立的点。 (2)有向图每个点的入度等于出度。 (3)有向图,可以存在两个点,其入度不等于

  • HDU 6606 Distribution of books 二分答案+权值线段树优化dp2021-05-07 13:31:37

    原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=6606 目录 题意分析Code 题意 有n本书,你需要把它分成k组,每组必须有一个,而且分组必须是连续的,最后多余的书可以丢掉。每组书的权值和为 s u

  • Prim算法2021-05-02 20:59:41

    例如;如下图,构造一棵最小生成树 构造过程: #include<iostream> #include<algorithm> #include<cstring> #include<iomanip> #include<cmath> using namespace std; const int maxx=505; const int inf=0x3f3f3f3f; int e[maxx][maxx];//记录两点之间的权值 int n

  • fzoj4493 糟糕的网络_题解2021-04-30 15:02:45

    fzoj4493 糟糕的网络_题解 20pts m = n − 1 m=n-1 m=n−1,是一棵树的情况,直接求出

  • Python中for循环语句的运用2021-04-27 21:36:46

    一个数字3开始,每次递增3(步长为3),到100截止,求显示累计求和过程,以及结果 代码如下: summ=0for i in range(3,100,3):print(i)summ=summ+iprint(summ) 代码说明: 1.先定义一个累计递加的值summ(从0开始) 2.range()函数,第一参数为开始值,第二参数为结束值(注意,i的值不会等于或大于结束),第三

  • 2021团体程序设计天梯赛 L1-7 天梯赛的善良2021-04-27 10:34:40

    思路: 水题,略过 Tip: 无 #include <bits/stdc++.h> using namespace std; int main() { int maxx = -1, minn = 0x3f3f3f3f; int cntmax = 0, cntmin = 0; int n; cin >> n; for (int i = 1; i <= n; i++) { int a; cin >

  • leetcode268最大整除子集2021-04-24 21:34:16

            class Solution { public: vector<int> largestDivisibleSubset(vector<int>& nums) { int p[1001],q[1001]; memset(q,0,sizeof(q)); sort(nums.begin(),nums.end()); int i,j; for(i=0;i&l

  • HDU2853(最大权完美匹配)2021-04-24 12:33:23

    题意:要求改动公司数量最少并且效率最大(效率最大也就是最大完美匹配) 其中有一个最大的问题就是最少改变公司数量(也就是最少改变多少条边) 这个知识点我也是看了网上的,关于这个知识点我也感觉很神奇。除了这个问题其他的都是模版问题了。 可以把每条边的权值扩大k倍,并且k要大于n

  • leetcode 56. 合并区间2021-04-18 19:02:35

    题目描述: 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。 输入:intervals = [[1,3],[2,6],[8,10],[15,18]] 输出:[[1,6],[8,10],[15,18]] 解释:区

  • 线段树算法一些题2021-04-17 10:02:05

    POJ3264 /* 算法过程: 1.构建线段树 2.在线段树中插入数据 3.对线段树进行更新(该题无更新操作)和查询 */ #include <cstdio> #include <algorithm> using namespace std; const int INF = 0xffffff0; struct node{ int l; //区间左端点 int r; //区间右端点 //下面是

  • 洛谷P1888 三角函数2021-04-12 19:30:13

    记录自己做题的时候犯的错误 题目第一遍做法第二遍做法 单纯记录一下蒟蒻的敲代码练习过程 题目 洛谷搜P1888 第一遍做法 有点晕乎,第一遍看题认为只要选出最小边和最大边就可以,但跑了一次,只有80分,自己运行的时候发现6 8 10这组数据,得数没有约分。。。(很烂的代码) #inclu

  • DP小小总结2021-04-09 22:02:44

    先贴上题目练习 密码20210401 DP之旅开始了~ A 基础方程:dp[i][j]=max(dp[i-1][j-1],dp[i-1][j])+a[i][j]; 这样是考虑[i][j]位置可由哪个位置过来 B 巨巨巨坑!看题容易漏条件: 如果当前格子是(x,y),下一步可以是(x+1,y),(x,y+1)或者(x,y*k)其中k>1。 /* 前提dp[i][j]=-inf;定

  • 第十届蓝桥杯 试题 E: 迷宫2021-04-04 20:01:40

    #include<bits/stdc++.h> using namespace std; const int maxx=1005; struct node{ int x,y; string str; node(int _x,int _y,string _str){ x=_x; y=_y; str=_str; } }; queue<node>q; int x[4]={1,0,0,-1}; int y[4]={0,-1,1,0}; int vis[maxx][max

  • Leetcode 第 47 场双周赛 C 5682. 所有子字符串美丽值之和(暴力 字符串常见套路题)2021-03-07 19:31:39

    思路 数据范围比较小 我们可以n方枚举区间 然后求一下字母前缀 然后更新最小值最大值即可 class Solution { public: int beautySum(string s) { int a[505][26]={0}; for(int i=0;s[i];i++){ if(i==0){ a[0][s[i]-'a']++;

  • ybtoj·最大均值【二分】2021-03-06 11:00:24

    最大均值 Description--解题思路--代码-- Description– 高效进阶「基础算法」第3章 二分算法课堂过关 例题3 解题思路– 二分答案 把所选子串每个数减去mid,若子串和仍为正数,则该子串的平均值大于mid 代码– #include <iostream> #include <cstdio> #include <cmath>

  • 最大子序和2021-03-02 13:32:22

    给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。   示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例 2: 输入:nums = [1]输出:1示例 3: 输入:nums = [0]输出:0示例 4: 输入:nums = [-1]输

  • poj31762021-02-25 09:32:25

    动态规划dp; 方法一(超时): #include<iostream> #include<algorithm> #include<cstring> using namespace std; const int maxx=500; int d[maxx][maxx]; int a[maxx][maxx]; int n,m; int dfs(int x,int y){ if(d[x][y]==0){ d[x][y]=a[x][y]+max(dfs(x+1,y),df

  • CF1393B Applejack and Storages 题解2021-02-15 22:02:36

    目录题目翻译题目解析代码 题目传送门 题目翻译 你需要维护一个序列,让它满足一下操作: 插入一个数字 删除一个数字,保证这个数字是存在 在每次删除和插入之后查询这些数字是否可以组成一个正方形和矩形 题目解析 为了方便,我们可以开一个桶,这样就变成了: 单点修改 区间查询最大值、

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有