首页 > 其他分享 >各种模板

各种模板

时间:2023-10-06 15:44:45浏览次数:43  
标签:各种 int namespace cin long include 模板

【模板】栈

#include <stack>
#include <string>
#include <iostream>
using namespace std;
int main() {
	cin.tie(0);
	int t, n;
	for (cin >> t; t; --t) {
		stack<unsigned long long int> s;
		for (cin >> n; n; --n) {
			string t;
			cin >> t;
			if (t == "push") {
				unsigned long long x;
				cin >> x;
				s.push(x);
			} else if (t == "pop") {
				if (s.empty()) {
					cout << "Empty\n";
				} else {
					s.pop();
				}
			} else if (t == "query") {
				if (s.empty()) {
					cout << "Anguei!\n";
				} else {
					cout << s.top() << '\n';
				}
			} else {
				cout << s.size() << '\n';
			}
		}
	}
	return 0;
}

题目:link

【模板】队列

#include<iostream>
using namespace std;
int n, x, m;
int queue[10005], head = 1, tail = 0;
int main() {
	cin >> n;
	while (n--) {
		cin >> x;
		switch (x) {
			case 1:
				cin >> m;
				queue[++tail] = m;
				break;
			case 2:
				if (head > tail) {
					cout << "ERR_CANNOT_POP" << '\n';
				} else {
					head++;
				}
				break;
			case 3:
				if (head > tail) {
					cout << "ERR_CANNOT_QUERY" << '\n';
				} else {
					cout << queue[head] << '\n';
				}
				break;
			case 4:
				cout << tail - head + 1 << '\n';
				break;
		}
	}
	return 0;
}

题目:link

【模板】Floyd 算法

#include <bits/stdc++.h>
using namespace std;

int n, m;
int u, v, w;
int l[105][105];

int main() {
    memset(l, 0x3f, sizeof(l));
    for (int i = 1; i <= 100; i++) {
        l[i][i] = 0;
    }
    cin >> n >> m;
    for (int i = 1; i <= m; i++) {
        cin >> u >> v >> w;
        l[u][v] = w;
        l[v][u] = w;
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            if (i != j) {
                for (int k = 1; k <= n; k++) {
                    if (l[j][k] > l[i][j] + l[i][k]) {
                        l[j][k] = l[i][j] + l[i][k];
                    }
                }
            }
        }
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            cout << l[i][j] << " ";
        }
        cout << '\n';
    }
    return 0;
}

题目:link

【模板】传递闭包

#include <bits/stdc++.h>
using namespace std;

int n, m;
int u, v, w;
int l[105][105];

int main() {
    cin >> n;
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            cin >> l[i][j];
        }
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            if (i != j) {
                for (int k = 1; k <= n; k++) {
                    l[j][k] |= (l[j][i] & l[i][k]);
                }
            }
        }
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            cout << l[i][j] << " ";
        }
        cout << '\n';
    }
    return 0;
}

题目:link

【模板】快速幂 || 取余运算

#include <bits/stdc++.h>
using namespace std;

long long pow_(long long a, int b, int p) {
    long long s = 1;
    while (b) {
        if (b & 1) {
            s *= a % p, s %= p;
        }
        a = a % p * a % p;
        a %= p;
        b /= 2;
        s %= p;
    }
    return s % p;
}

int main() {
    int a, b, p;
    cin >> a >> b >> p;
    printf("%lld^%lld mod %lld=%lld", a, b, p, pow_(a, b, p));
    return 0;
}

题目:link

【模板】并查集

#include <bits/stdc++.h>
using namespace std;
int size[10005];
int fa[10005];
int FF(int x) {
  return x == fa[x] ? x : fa[x] = FF(fa[x]);
}
void add(int u, int v) {
  u = FF(u), v = FF(v);
  if (u == v) return;
  if (size[u] < size[v]) swap(u, v);
  fa[v] = u;
  size[u] += size[v];
}
int main() {
  for (int i = 1; i <= 10000; i++) fa[i] = i;
  fill(size + 1, size + 10001, 0);
  int n, m;
  int z, x, y;
  scanf("%d %d", &n, &m);
  for (int i = 1; i <= m; i++) {
    scanf("%d %d %d", &z, &x, &y);
    if (z == 1) {
      add(x, y);
    } else {
      if (FF(x) == FF(y))
        cout << 'Y' << endl;
      else
        cout << 'N' << endl;
    }
  }
  return 0;
}

题目:link

标签:各种,int,namespace,cin,long,include,模板
From: https://www.cnblogs.com/Meng-ke-ai/p/mu-ban.html

相关文章

  • c#设计模式-行为型模式 之 模板方法模式
    ......
  • 常用的SQL语句小结(三)---复杂查询,CASE表达式,各种连接查询
    1.复杂查询(1)普通子查询SELECTproduct_type,cnt_productFROM(SELECTProduct_type,COUNT(*)AScnt_productFROMProductGROUPBYproduct_type)ASProductSum;()里的是内层查询会首先执行,然后才会执行外层查询子查询可以多层嵌套,但是性能会下降,尽量少用多层子查询 (2)标量......
  • 用C++写的一个万用哈希函数模板
    用C++写的一个万用哈希函数模板template<typenameT>inlinevoidhash_combine(size_t&seed,constT&val){seed^=hash<T>()(val)+0x9e3779b9+(seed<<6)+(seed<<2);}template<typenameT,typename......
  • C++模板template应用总结
    引言模板(Template)指C++程序设计设计语言中采用类型作为参数的程序设计,支持通用程序设计。C++的标准库提供许多有用的函数大多结合了模板的观念,如STL以及IOStream。函数模板在c++入门中,很多人会接触swap(int&,int&)这样的函数类似代码如下:voidswap(int&a,int&b){......
  • 【VMware篇】5-ESXi导入、导出虚拟机和模板
    第1章、前言本文主要介绍封装系统导出为模板,以WindowsServer2019为例。第2章、导出系统为模板1、打开运行窗口输入“sysprep”点击确定。2、选中“sysprep”鼠标右键“以管理员身份运行”。3、勾选“通用”,关机选项选择“关机”,点击确定。4、选中server2019 鼠标右键选择“导出......
  • 线段树模板
    应该是做的最认真的模板了。。。namespacexds{template<classT,constintMYMAXSIZE,T(*fun)(Ta,Tb)>classSTree{private:Tt[MYMAXSIZE<<2],tag[MYMAXSIZE<<2],a[MYMAXSIZE];intnum;inlineconstintls(constintx){......
  • 系统架构设计师论文模板
    摘要XXXX年XX月,我作为XXXX(工作职责),负责XXXXX公司XXXXXXXX的建设项目的开发工作,该项目为期XXXX(项目周期),项目经费为XXXX(项目经费),通过该项目,实现XXXXXXX(项目的实现目标)。该项目XXXXXXXX(实施情况)。该项目于XXXX年XX月开始,于XXXX年XX月完成系统上线,XXXX年XX月通过最终验收,得到......
  • 模板渲染的使用
    现在一般都是前后端分离开发了,模板相对较少使用。和django一样,flask也是支持模板渲染的。flask中默认使用的是jinjia2模板渲染语言。#template_folder:指定模板文件查找的目录(默认就是templates)app=Flask(__name__,template_folder="templates")使用模板渲染返回,前面r......
  • redis中各种scan命令学习
    转自:https://blog.csdn.net/qq_40399646/article/details/109034331,这个博客讲的非常好http://jinguoxing.github.io/redis/2018/09/04/redis-scan/1.介绍keys命令可以列出所有满足特定正则字符串规则的key。但它没有offset、limit参数,会一次性返回所有满足条件的key,是遍历......
  • math---记录冲刺阶段的各种问题以及一些错题
    一、二维平面下的积分(包括直角坐标系、极坐标、参数方程的下的面积、弧长、侧面积和体积公式以及一些拓展)问题来源:2003年数二真题填空题第四题开门红 这道题极其的简单,却折射出了我的很多问题我发现我对极坐标下的各种积分都有很大程度的遗忘,有的积分公式甚至一点印象都没......