c++AC

P1093 [NOIP2007 普及组] 奖学金

XYC的Ship @ 2019-08-16 17:20:18

大水题,真不明白你们怎么错的

#include<bits/stdc++.h>
using namespace std;
int a[301],b[301],c[301],d[301],e[301];
int main()
{
    int n,i,j;
    cin>>n;
    for(i=1;i<=n;i++)
    {
        cin>>a[i]>>b[i]>>c[i];
    }
    for(i=1;i<=n;i++)
    {
        d[i]=a[i]+b[i]+c[i];
        e[i]=i;
    }
    for(i=1;i<=n-1;i++)
    {
        for(j=1;j<=n-i;j++)
        {
            if(d[j]<d[j+1])
            {
                swap(d[j],d[j+1]);
                swap(e[j],e[j+1]);
                swap(a[j],a[j+1]);
            }
            else if(d[j]==d[j+1])
            if(a[j]<a[j+1])
            {
                swap(d[j],d[j+1]);
                swap(e[j],e[j+1]);
                swap(a[j],a[j+1]);
            }
            else if(a[j]==a[j+1])
            if(e[j]>e[j+1])
            {
                swap(d[j],d[j+1]);
                swap(e[j],e[j+1]);
                swap(a[j],a[j+1]); 
            }
        }
    }
    for(i=1;i<=5;i++)
    {
        cout<<e[i]<<" "<<d[i]<<endl;
    }
    return 0;
}

by 向JFCA说不 @ 2019-08-16 17:29:30

@xyc1900104543 讨论又不是你炫耀的地方


by 江南小巫 @ 2019-08-16 17:29:37

@宸铭de小号 不用管他,生气对身体不好 2333


by 绝顶我为峰 @ 2019-08-16 17:31:50

@xyc1900104543 你好,这道题的代码如下:

#include<iostream>
#include<cstdio>
#include<queue>
using namespace std;
struct node
{
    int nxt,to,weight;
}e[5000001<<2];
int tot=1,n,m,s,t,h[1000001],cur[1000001],dep[1000001],ans;
bool vis[1000001];
inline void add(int x,int y,int w)
{
    e[++tot].nxt=h[x];
    h[x]=tot;
    e[tot].to=y;
    e[tot].weight=w;
}
inline bool bfs()
{
    for(int i=0;i<=t;++i)
    {
        vis[i]=0;
        dep[i]=0x3f3f3f3f;
        cur[i]=h[i];
    }
    queue<int> q;
    q.push(s);
    dep[s]=0;
    while(!q.empty())
    {
        int k=q.front();
        q.pop();
        vis[k]=0;
        for(int i=h[k];i;i=e[i].nxt)
            if(e[i].weight&&dep[e[i].to]>dep[k]+1)
            {
                dep[e[i].to]=dep[k]+1;
                if(!vis[e[i].to])
                {
                    vis[e[i].to]=1;
                    q.push(e[i].to);
                }
            }
    }
    return dep[t]!=dep[0];
}
int dfs(int k,int f)
{
    int r=0;
    if(k==t)
    {
        ans+=f;
        return f;
    }
    int used=0;
    for(int i=cur[k];i;i=e[i].nxt)
    {
        cur[k]=i;
        if(e[i].weight&&dep[e[i].to]==dep[k]+1)
            if((r=dfs(e[i].to,min(e[i].weight,f-used))))
            {
                used+=r;
                e[i].weight-=r;
                e[i^1].weight+=r;
                if(f==used)
                    break;
            }
    }
    return used;
}
inline void dinic()
{
    while(bfs())
        dfs(s,1<<20);
}
int main()
{
    scanf("%d%d",&n,&m);
    s=1,t=n*m;
    for(int i=1;i<=n;++i)
        for(int j=1;j<m;++j)
        {
            int w;
            scanf("%d",&w);
            add((i-1)*m+j,(i-1)*m+j+1,w);
            add((i-1)*m+j+1,(i-1)*m+j,0);
            add((i-1)*m+j+1,(i-1)*m+j,w);
            add((i-1)*m+j,(i-1)*m+j+1,0); 
        }
    for(int i=1;i<n;++i)
        for(int j=1;j<=m;++j)
        {
            int w;
            scanf("%d",&w);
            add((i-1)*m+j,i*m+j,w);
            add(i*m+j,(i-1)*m+j,0);
            add(i*m+j,(i-1)*m+j,w);
            add((i-1)*m+j,i*m+j,0);
        }
    for(int i=1;i<n;++i)
        for(int j=1;j<m;++j)
        {
            int w;
            scanf("%d",&w);
            add((i-1)*m+j,i*m+j+1,w);
            add(i*m+j+1,(i-1)*m+j,0);
            add(i*m+j+1,(i-1)*m+j,w);
            add((i-1)*m+j,i*m+j+1,0);
        }
    dinic();
    printf("%d\n",ans);
    return 0;
}

你看得懂吗,看不懂请赶紧滚蛋,谢谢

垃圾人我见多了,不差你一个


by 向JFCA说不 @ 2019-08-16 17:32:10

@江南小巫 赶紧在AFO之前多举报一些贴子qwq


by 向JFCA说不 @ 2019-08-16 17:32:56

我第三次见这人了


by 江南小巫 @ 2019-08-16 17:33:49

@宸铭de小号 我已经举报过了233333

话说为什么今天有好多这样的帖子,炸鱼吗?233


by 江南小巫 @ 2019-08-16 17:34:53

@绝顶我为峰 这不是BZOJ1001吗?23333

BZOJ他估计就会做1000,2333


by All_Might @ 2019-09-08 12:13:04

@XYC的Ship QAQ


by 养生莫熬夜 @ 2019-11-02 11:50:32

屎黄色的名字。。。


by 养生莫熬夜 @ 2019-11-02 11:51:00

还有搞笑的称号


上一页 | 下一页