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的更多相关文章

  1. 【动图解释】关系数据库de关系代数小记

    本文章在 Github 撰写,同时在 我的博客 进行了发布. 最近学数据库概论学到了关系数据库的关系代数了.哎嘛,真的把我整晕了,尤其是关系代数的使用,很容易让人被蒙在鼓里. 对我来说槽点最大的莫过于 ...

  2. Nacos详解

    Nacos是什么 欢迎来到Nocos的世界! 组成部分 全称 描述 Na naming/nameServer 即服务注册中心,与 Spring Cloud Eureka 的功能类似. co confi ...

  3. 避免用Apache Beanutils进行属性的copy。why?让我们一起一探究竟

    在实际的项目开发中,对象间赋值普遍存在,随着双十一.秒杀等电商过程愈加复杂,数据量也在不断攀升,效率问题,浮出水面. 问:如果是你来写对象间赋值的代码,你会怎么做? 答:想都不用想,直接代码走起来,g ...

  4. 【项目实战】从零到一搭建Spring Boot整合Mybatis-plus

    前言 2023年想搭建一套属于自己的框架,做一个属于自己想法的项目.这些年工作中一直用公司已有的框架,以前有跟着学习视频搭建过,但自己真正动手搭建时发现问题还是很多,比如没有引入Mybatis-plu ...

随机推荐

  1. js任务队列EventLoop

    JS 执行机制 在我们学js 的时候都知道js 是单线程的如果是多线程的话会引发一个问题在同一时间同时操作DOM 一个增加一个删除JS就不知道到底要干嘛了,所以这个语言是单线程的但是随着HTML5到来 ...

  2. 初识argparse 模块

    # 1引入模块 import argparse # 2建立解析对象 parser = argparse.ArgumentParser() # 3增加属性:给xx实例增加一个aa属性 # xx.add_ ...

  3. Base58算法加密解密(Python实现)

    def b58encode(tmp:str) -> str: tmp = list(map(ord,tmp)) temp = tmp[0] base58 = "123456789ABC ...

  4. Redis-03 Redis事务

    需要特别注意,Redis 的命令是原子性的,而 Redis 的事务是非原子性的 事务相关命令 MULTI 命令 开启事务命令,Redis将操作命令逐个放到队列中,根据EXEC命令来原子化执行命令 EX ...

  5. Spark详解(05-1) - SparkCore实战案例

    Spark详解(05-1) - SparkCore实战案例 数据准备 1)数据格式 本项目的数据是采集电商网站的用户行为数据,主要包含用户的4种行为:搜索.点击.下单和支付. (1)数据采用_分割字段 ...

  6. (一)elasticsearch 编译和启动

    1.准备 先从github官网上clone elasticsearch源码到本地,选择合适的分支.笔者这里选用的是7.4.0(与笔者工作环境使用的分支一致),此版本编译需要jdk11. 2.编译 Re ...

  7. (8)go-micro微服务Mysql配置

    目录 一 gorm介绍 二 gorm安装 1.1 下载依赖 1.2 使用MySQL驱动 三 CURD操作 1. 查询 1.1 单行查询 1.2 多行查询 2. 插入数据 3. 更新数据 4. 删除数据 ...

  8. C++初探索

    C++初探索 前言 C++ 和 C 的区别主要在8个方面: 输入和输出 引用 inline函数 函数默认值 函数重载 模板函数 new 和 delete namespace 我仅对印象不深的地方做了总 ...

  9. P8796 [蓝桥杯 2022 国 AC] 替换字符

    题面 给定一个仅含小写英文字母的字符串 \(s\) 和 \(m\) 次操作,每次操作选择一个区间 \([l_i,r_i]\) 将 \(s\) 的该区间中的所有字母 \(x_i\) 全部替换成字母 \( ...

  10. vue3+quasar+capacitor开发多平台项目,使用quasar改变主题背景

    quasar的样式和其他的框架修改不太一样,需要我们使用动态的方式来进行变更,一般来说有两种方案进行主题修改 方案一: 修改样式所需文档: 这里是样式修改的说明:https://quasar.dev/ ...