20230103~05code
U190849 最简分式
#include<bits/stdc++.h>
using namespace std;
// gcd(a,b) = gcd(b, a%b): a,b的最大公约数 = b,a%b 的最大公约数
int gcd(int a,int b) {
// return b ? gcd(b,a%b) : a;
if(b==0) return a;
return gcd(b,a%b);
}
int main() {
int t,a,b,c,d; cin>>t;
while(t--) {
cin>>a>>b>>c>>d;
int e = a*d+b*c;
int f = b*d;
int temp = gcd(e,f);
cout<<e/temp<<" "<<f/temp<<endl;
}
return 0;
}
P5734 【深基6.例6】文字处理软件
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e6+10,INF=0x3f3f3f3f;
// s.append(str); 在 s 后追加一个 str
// s.substr(a,b); 截取 s 的第 a 个字符后连续 b 个字符
// s.insert(a, str); 在 s 的第 a 个字符后插入字符串 str
// s.find(str) 查询 str 第一次出现的下标,如果没有出现则返回 -1
int main(){
string s,str; int t,op,a,b; cin>>t>>s;
while(t--){
cin>>op;
if(op==1){
cin>>str; s.append(str);
cout<<s<<endl;
}else if(op==2){
cin>>a>>b; s=s.substr(a,b);
cout<<s<<endl;
}else if(op==3){
cin>>a>>str; s.insert(a, str);
cout<<s<<endl;
}else if(op==4){
cin>>str;
cout<<(int)s.find(str)<<endl;
}
}
return 0;
}
P1104 生日
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=110,INF=0x3f3f3f3f;
int n;
struct T {
string name;
int y,m,d,id;
}t[N];
bool cmp(T a, T b){
if(a.y!=b.y) return a.y < b.y;
if(a.m!=b.m) return a.m < b.m;
if(a.d!=b.d) return a.d < b.d;
return a.id > b.id;
}
int main(){
cin>>n;
for(int i=1; i<=n; i++){
cin>>t[i].name>>t[i].y>>t[i].m>>t[i].d;
t[i].id = i;
}
sort(t+1, t+n+1, cmp);// sort(首地址,末地址后一位,比较方式);
for(int i=1; i<=n; i++){
cout<<t[i].name<<endl;
}
return 0;
}
P4305 [JLOI2011]不重复数字
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e6+10,INF=0x3f3f3f3f;
int main() {
int t,x,n; cin>>t;
while(t--) {
set<int> s; cin>>n;
while(n--) {
cin>>x;
if(s.count(x)==0) cout<<x<<" ";
s.insert(x);
}
cout<<endl;
}
return 0;
}
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e6+10,INF=0x3f3f3f3f;
int main() {
int t,x,n; scanf("%d", &t);
while(t--) {
map<int,int> mp; scanf("%d", &n);
while(n--) {
scanf("%d", &x);
if(mp.count(x)==0) printf("%d ", x);
mp[x] = 1; // x ---> 1
}
printf("\n");
}
return 0;
}
P8218 【深进1.例1】求区间和
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e5+10, INF=0x3f3f3f3f;
int n,q,l,r,a[N],s[N];
int main() {
// 笔记:前缀和 s[i] = a[1]+a[2] +... +a[i]
// s[i] = s[i-1] + a[i]
// 区间和 [l,r] = s[r] - s[l-1]
cin>>n;
for(int i=1; i<=n; i++) cin>>a[i];
for(int i=1; i<=n; i++) s[i]=s[i-1]+a[i];
cin>>q;
while(q--) {
cin>>l>>r;
cout<<s[r] - s[l-1]<<endl;
}
return 0;
}
P3397 地毯
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e3+10,INF=0x3f3f3f3f;
int n,m,v[N][N];
int main(){
int x1,x2,y1,y2;
cin>>n>>m;
for(int i=1; i<=m; i++){
cin>>x1>>y1>>x2>>y2;
for(int x=x1; x<=x2; x++){
for(int y=y1; y<=y2; y++){
v[x][y] ++;
}
}
}
for(int i=1; i<=n; i++){
for(int j=1; j<=n; j++){
cout<<v[i][j]<<" ";
} cout<<endl;
}
return 0;
}
P2367 语文成绩
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=5e6+10,INF=0x3f3f3f3f;
int n,p,a[N],b[N];
int main(){
cin>>n>>p; int l,r,d;
for(int i=1; i<=n; i++) cin>>a[i];
while(p--){
cin>>l>>r>>d;
b[l] += d;
b[r+1] -= d;
}
int tmin=2e9;
for(int i=1; i<=n; i++){
b[i] += b[i-1];
if(a[i]+b[i] < tmin) tmin=a[i]+b[i];
}
cout<<tmin;
return 0;
}
CF276C Little Girl and Maximum Sum
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=2e5+10,INF=0x3f3f3f3f;
int n,q,a[N],b[N], l,r;
int main(){
cin>>n>>q;
for(int i=1; i<=n; i++) cin>>a[i];
while(q--){
cin>>l>>r;
b[l] ++;
b[r+1] --;
}
for(int i=1; i<=n; i++) b[i]+=b[i-1];
sort(a+1, a+1+n);
sort(b+1, b+1+n);
LL s=0; // 2e5 * 2e5
for(int i=1; i<=n; i++) s += 1ll*a[i]*b[i];
cout<<s;
return 0;
}
P1451 求细胞数量
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=110,INF=0x3f3f3f3f;
char s[N][N];
int n,m,ans=0;
bool check(int x,int y) {
return x>=0 && x<n &&y>=0 && y<m &&s[x][y]!='0';
}
void dfs(int x,int y) {
s[x][y]='0';
if(check(x+1,y)) dfs(x+1, y);
if(check(x-1,y)) dfs(x-1, y);
if(check(x,y-1)) dfs(x, y-1);
if(check(x,y+1)) dfs(x, y+1);
}
int main() {
cin>>n>>m;
for(int i=0; i<n; i++) cin>>s[i];
for(int i=0; i<n; i++) {
for(int j=0; j<m; j++) {
if(s[i][j]!='0') {
ans++, dfs(i,j);
}
}
}
cout<<ans;
return 0;
}
P1706 全排列问题
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e6+10,INF=0x3f3f3f3f;
int n,vis[N],ans[N];
// 坐第 m 个板凳
void dfs(int m) {
if(m > n) {
for(int i=1; i<=n; i++)
cout<<setw(5)<<ans[i];
cout<<endl; return;
}
for(int i=1; i<=n; i++) { // 第 i 个人
if(vis[i]==0) {
vis[i]=1, ans[m]=i; // 第 m 个板凳坐的是 i.
dfs(m+1);
vis[i]=0; // 回溯
}
}
}
int main() {
cin>>n; dfs(1);
return 0;
}
20230103~05code的更多相关文章
- 【动图解释】关系数据库de关系代数小记
本文章在 Github 撰写,同时在 我的博客 进行了发布. 最近学数据库概论学到了关系数据库的关系代数了.哎嘛,真的把我整晕了,尤其是关系代数的使用,很容易让人被蒙在鼓里. 对我来说槽点最大的莫过于 ...
- Nacos详解
Nacos是什么 欢迎来到Nocos的世界! 组成部分 全称 描述 Na naming/nameServer 即服务注册中心,与 Spring Cloud Eureka 的功能类似. co confi ...
- 避免用Apache Beanutils进行属性的copy。why?让我们一起一探究竟
在实际的项目开发中,对象间赋值普遍存在,随着双十一.秒杀等电商过程愈加复杂,数据量也在不断攀升,效率问题,浮出水面. 问:如果是你来写对象间赋值的代码,你会怎么做? 答:想都不用想,直接代码走起来,g ...
- 【项目实战】从零到一搭建Spring Boot整合Mybatis-plus
前言 2023年想搭建一套属于自己的框架,做一个属于自己想法的项目.这些年工作中一直用公司已有的框架,以前有跟着学习视频搭建过,但自己真正动手搭建时发现问题还是很多,比如没有引入Mybatis-plu ...
随机推荐
- 【转载】SQL SERVER 表变量与临时表的优缺点
什么情况下使用表变量?什么情况下使用临时表? -- 表变量: DECLARE @tb table(id int identity(1,1), name varchar(100)) INSERT @tb ...
- 本机无法配置远程服务器上的MySQL ODBC连接驱动
1.问题描述 我想要访问远程windows服务器上的MySQL数据库,因此需要在本地ODBC驱动上配好远程服务器的MySQL.但配置好基本信息后,测试的时候出现如下问题: 2.解决方法 之所以产生这种 ...
- ArcObjects SDK开发 025 AO中对象的序列化和反序列化
在ArcObjects SDK,序列化接口是IPersistStream,该接口的定义如下. 其中GetClassID函数可以获取实际类型的唯一ID,Load函数是反序列化函数,Save函数为序列化函 ...
- Spring MVC学习(一) Spring MVC基本介绍以及配置
Spring MVC学习(一) Spring MVC基本介绍以及配置 摘要:这篇笔记是对于Spring MVC的第一部分的学习中的整理,主要记录了Spring MVC的基础知识以及配置一个简单的S ...
- Java学习笔记:2022年1月13日(其一)
Java学习笔记:2022年1月13日(其一) 摘要:这篇笔记主要讲解了Java中的自定义类.以及构造一个类时所需要了解的一些重点知识. 目录 Java学习笔记:2022年1月13日(其一) 1. ...
- Vue+echart 展示后端获取的数据
最近在合作做一个前后端分离项目时,为了测试我写的后端部分获取数据的效果,自己也学了一下 vue 的知识,在获取 json 信息这里也踩了很多坑. 这里列举下我返回的 json 部分信息: { &quo ...
- do while 出口條件循環
- VUE上传表格文件发送后端,后端解析以及上传文件,前端进行解析的实现方法
首先来说前端上传表格,然后利用纯前端技术进行解析表格的办法 详细步骤----请点击这里 接下来来说上传发送给后端的代码实现 html <input ref="myInput" ...
- Vue 父组件传值给子组件,对象数组类型,父组件直接调用子组件方法,会是上次的引用地址,vue 父子组件传值数据不能实时更新问题
vue 父子组件传值数据不能实时更新问题 解决方案一: 在子组件进行深度监听,然后监听里调用方法就可以了 父组件测试代码 <WranList ref="myEMChartRef2&qu ...
- Vue3源码阅读梳理
简单代码例子 const { createApp, defineComponent, computed, watch, ref, reactive, effect } = Vue const app ...