头像

xiezere




离线:13小时前


最近来访(32)
用户头像
limie
用户头像
大雪莱
用户头像
该用户被封禁
用户头像
吴子涵
用户头像
小朋友没有武德
用户头像
dongdong
用户头像
用户头像
icebreaker
用户头像
edgdcgxgbx
用户头像
有心人
用户头像
算法小爱
用户头像
Misaka_9982
用户头像
晓玲
用户头像
卖核弹的小女孩
用户头像
国家特级退堂鼓演奏家
用户头像
灭神堂乄魂锁典狱长
用户头像
雪域大王
用户头像
peng0x0
用户头像
lyktes
用户头像
Mallknow

活动打卡代码 AcWing 803. 区间合并

xiezere
4个月前
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 100005;
struct node{
    int x,y;
}a[N];
bool cmp(node q,node p){
    return q.x<p.x;
}
int n,s=1,j;
int main(){
    scanf("%d", &n);
    for (int i = 0; i < n; i ++ ){
        scanf("%d%d", &a[i].x, &a[i].y);
    }
    sort(a,a+n,cmp);
    j=0;
    for (int i = 1; i < n; i ++ ){
        if(a[i].x<=a[j].y){
            a[j].y=max(a[j].y,a[i].y);
        }else{
            s++;
            j=i;
        } 
    }
    printf("%d",s);
    return 0;
}


活动打卡代码 AcWing 786. 第k个数

xiezere
4个月前
#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,k;
    cin>>n>>k;
    int a[n];
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    sort(a,a+n);
    cout<<a[k-1];
}


活动打卡代码 AcWing 785. 快速排序

xiezere
4个月前
#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    int a[n];
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    sort(a,a+n);
    for(int i=0;i<n;i++){
        cout<<a[i]<<" ";
    }
}



活动打卡代码 AcWing 2. 01背包问题

xiezere
4个月前
#include<bits/stdc++.h>
using namespace std;
const int N=1005;
int n,v;
int a[N],w[N],dp[N];
int main(){
    scanf("%d %d",&n,&v);
    for(int i=1;i<=n;i++){
        scanf("%d %d",&a[i],&w[i]);
    }
    for(int i=1;i<=n;i++){
        for(int j=v;j>=a[i];j--){
            dp[j]=max(dp[j],dp[j-a[i]]+w[i]);
        }
    }
    cout<<dp[v];
    return 0;
}


活动打卡代码 AcWing 2816. 判断子序列

xiezere
4个月前
#include<bits/stdc++.h>
using namespace std;
const int N=100005;
int n,m,j;
int a[N],b[N];
int main(){
    scanf("%d %d",&n,&m);
    for(int i=0;i<n;i++){
        scanf("%d",&a[i]);
    }
    for(int i=0;i<m;i++){
        scanf("%d",&b[i]);
    }
    for(int i=0;i<m;i++){
        if(j<n&&b[i]==a[j]){
            j++;
        }
    }
    if(j==n) cout<<"Yes";
    else cout<<"No";
    return 0;
}



xiezere
4个月前
#include<bits/stdc++.h>
using namespace std;
const int N=100005;
int n,m,x;
int a[N],b[N];
int main(){
    scanf("%d %d %d",&n,&m,&x);
    for(int i=0;i<n;i++){
        scanf("%d",&a[i]);
    }
    for(int i=0;i<m;i++){
        scanf("%d",&b[i]);
    }
    for(int i=0,j=m-1;i<n&&j>=0;){
        if(a[i]+b[j]==x){
            printf("%d %d",i,j);
            break;
        }else if(a[i]+b[j]>x){
            j--;
        }else{
            i++;
        }
    }
    return 0;
}



xiezere
4个月前
#include<bits/stdc++.h>
using namespace std;
const int N=100005;
int n,m,sb[N],a[N];
int main(){
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    for(int j=0,i=0;i<n;i++){
        sb[a[i]]++;
        while(sb[a[i]]>1){
            sb[a[j]]--;
            j++;
        }
        m=max(m,i-j+1);
    }
    printf("%d",m);
}



活动打卡代码 AcWing 794. 高精度除法

xiezere
5个月前
#include<bits/stdc++.h>
using namespace std;
vector<int> div(vector<int> &A,int B,int &r){
    vector<int> C;
    for(int i=0;i<A.size();i++){
        r=r*10+A[i];
        C.push_back(r/B);
        r=r%B;
    }
    reverse(C.begin(),C.end());
    while(C.size()>1&&C.back()==0) C.pop_back();
    return C;
}
int main(){
    string a;
    int B,r=0; 
    cin>>a>>B;
    vector<int> A;
    for(int i=0;i<a.size();i++) A.push_back(a[i]-'0');
    auto C = div(A,B,r);
    for(int i=C.size()-1;i>=0;i--) cout<<C[i];
    cout<<endl<<r;
    cout<<endl;
    return 0;
}


活动打卡代码 AcWing 793. 高精度乘法

xiezere
5个月前
#include<bits/stdc++.h>
using namespace std;
string n;
int a[100100],b,j;
int main(){
    cin>>n;
    scanf("%d",&b);
    for(int i=0;i<n.size();i++){
        a[i]=n[n.size()-i-1]-'0';
    }
    j=0;
    for(int i=0;i<n.size()||j;i++){
        a[i]=a[i]*b+j;
        j=a[i]/10;
        a[i]%=10;
    }
    j=0;
    for(int i=100009;i>=0;i--){
        if(j||a[i]){
            cout<<a[i];
            j=1;
        }
    }
    if(!j) cout<<0;
    return 0;
}


活动打卡代码 AcWing 798. 差分矩阵

xiezere
5个月前
#include <bits/stdc++.h>
using namespace std;
const int N=1005;
int a[N][N],b[N][N];
int main(){
    int n,m,q,c;
    int xa,ya,xb,yb;
    scanf("%d %d %d",&n,&m,&q);
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            scanf("%d",&a[i][j]);
            b[i][j]=a[i][j]-a[i-1][j]-a[i][j-1]+a[i-1][j-1];
        }
    }
    while(q--){
        scanf("%d %d %d %d %d",&xa,&ya,&xb,&yb,&c);\
        b[xa][ya]+=c,b[xb+1][yb+1]+=c;
        b[xb+1][ya]-=c,b[xa][yb+1]-=c;
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            a[i][j]=b[i][j]+a[i-1][j]+a[i][j-1]-a[i-1][j-1];
            printf("%d ",a[i][j]);
        }
        printf("\n");
    }
    return 0;
}