APTX博客

  • ACGN
  • Coding
  • DevOps
  • Daily
  • Share
  • Bangumi
C++
OI

#洛谷#C/C++P3367并查集的使用及其实现

性质 并查集算法(union_find sets)支持分割一个集合,求连通子图、求最小生成树(克鲁斯卡尔) 输入输出格式 输入格式: 第一行包含两个整数N、M,表示共有N个元素和M个操作。 接下来M行,每行包含三个整数Zi、Xi、Yi 当Zi=1时,将Xi与Yi所在的集合合并 当Zi=2时,输出Xi与Yi是否在同一集合内,是的话输出Y;否则话输出N 输出格式: 如上,对于每一个Zi=2的操作,都有一行输出,每行包含一个大写字母,为Y或者N 输入输出样例 输入样例#1: 4 7 2 1 2 1 1 2 2 1 2 1…

2018年4月30日 0条评论 1896点热度 0人点赞 神楽坂 みずき 阅读全文
OI

C/C++线性筛素数的三种方法

一、埃拉托斯特尼筛法 基本思想:素数的倍数一定不是素数 实现方法:用一个长度为N+1的数组保存信息(0表示素数,1表示非素数),先假设所有的数都是素数(初始化为0),从第一个素数2开始,把2的倍数都标记为非素数(置为1),一直到大于N;然后进行下一趟,找到2后面的下一个素数3,进行同样的处理,直到最后,数组中依然为0的数即为素数。 说明:整数1特殊处理即可。背过就好了。 时间复杂度O(nlogn) 空间复杂度为O(n) #include <cstdio> #include <iostream>…

2018年4月30日 1条评论 3264点热度 13人点赞 神楽坂 みずき 阅读全文
OI

#洛谷#C/C++P4470 [BJWC2018]售票

题目描述 C 市火车站最近出现了一种新式自动售票机。买票时,乘客要先在售票机上输入终点名称。一共有N 处:目的地,随着乘客按顺序输入终点名称的每个字母,候选终点站数目会逐渐减少。 在自动售票机屏幕上,有一个4 行8 列的键盘,如下图所示。 在乘客每输入一个字母后,键盘上只有有效字符是可选的(取决于还有哪些候选终点站),其余的字母会被字符'*' 取代。 告诉你N 处目的地的名称,以及乘客已经输入的若干字符,请你输出键盘目前的状态。 输入输出格式 输入格式: 第一行为一个整数N (1≤N ≤50)。接下来N 行,每行一…

2018年4月24日 0条评论 2346点热度 0人点赞 神楽坂 みずき 阅读全文
OI

C++快速幂

前言 快速幂就是快速算底数的n次幂。其时间复杂度为 O(log₂N), 与朴素的O(N)相比效率有了极大的提高。 C++的实现方式: 先笔记一下: b & 1 //取b二进制的最低位,判断和1是否相同,相同返回1,否则返回0,可用于判断奇偶(偶数二进制结尾是0奇数是1) b>>1 //把b的二进制右移一位,即去掉其二进制位的最低位 就是b=b/2 递归的方式 long long pow(long long a,long long b){ if (b==0) return 1; long long…

2018年2月28日 0条评论 2081点热度 0人点赞 神楽坂 みずき 阅读全文
OI

#洛谷#C/C++P1090 合并果子

题目描述 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过 n-1n−1次合并之后, 就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。 因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个果子重量都为 11 ,并且已知果子的种类 数和每种果子的数目,你的任务是设计出合并的次序方案,使多多耗费的体力最少…

2018年2月26日 0条评论 2410点热度 1人点赞 神楽坂 みずき 阅读全文
OI

C++ STL中队列(queue)及优先队列(priority_queue)笔记

声明方式 库:#include<queue> queue<int> q; //声明一个int类型的队列 priority_queue <int, vector<int>, greater<int> > q; //从小到大的优先队列 priority_queue <int, vector<int>, less<int> > q; //从大到小 //默认的 priority_queue <int> q; //好像…

2018年2月26日 0条评论 2814点热度 2人点赞 神楽坂 みずき 阅读全文
OI

C++中string类型字符串笔记

声明方式 库:#include<string> string s;//声明一个string 对象 string ss[10];//声明一个string对象的数组 操作方式 s.begin() s.end为迭代器,类似指针的东西,没怎么搞清楚 1、substr(a,b) 返回从a到b的字符串 2、substr(a) 返回a及a以后的字符串 3、insert(a,str) 在a的位置插入str 4、erase(s.begin()+a) 删除a处字符 5、erase(s.begin()+a,s.begin()…

2018年2月22日 0条评论 2039点热度 1人点赞 神楽坂 みずき 阅读全文
OI

#洛谷#C/C++P1003 铺地毯

题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有 n 张地毯,编号从 1 到n 。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。 地毯铺设完成后,组织者想知道覆盖地面某个点的最上面的那张地毯的编号。注意:在矩形地毯边界和四个顶点上的点也算被地毯覆盖。 输入输出格式 输入格式: 输入文件名为carpet.in 。 输入共n+2 行。 第一行,一个整数n ,表示总共有 n 张地毯。 接下来的n…

2018年2月11日 0条评论 1772点热度 3人点赞 神楽坂 みずき 阅读全文
OI

#洛谷#C/C++P1008 三连击

题目背景 本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。 题目描述 将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成1:2:3的比例,试求出所有满足条件的三个三位数。 输入输出格式 输入格式: 木有输入 输出格式: 若干行,每行3个数字。按照每行第一个数字升序排列。 本人提供的题解 机智的九循环 #include<cstdio> #include<iostream> using namespace std; bool…

2017年12月16日 0条评论 2609点热度 2人点赞 神楽坂 みずき 阅读全文
123

神楽坂 みずき

萌萌萌,好萌!

搜索
最新 热点 随机
最新 热点 随机
上岸 Star Divine 现代前端工程师发展方向不完全指北 站点域名变更通知 私たちの居る理由 《サクラノ詩》VI 章 直哉与蓝对话
教你如何观看性感荷官在线发牌 C++程序查看运行时间&&空间大小&&程序运行分析 #置頂#已購漫畫/輕小說匯總整理 从台湾网路书店爬取图书信息小记 Golang手动交叉编译Caddy v2 Linux下使用Sublime Text3 破解汉化并配置C++编程环境
标签聚合
洛谷 C/C++ 动漫 C++ ST HTML 日常 OI
分类
  • ACGN
  • Coding
  • Daily
  • DevOps
  • OI
  • Share
友情链接
  • APTX部落
  • 翰林的小站

COPYRIGHT © 2017-2022 APTX博客. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang