随笔 - 8  文章 - 0  评论 - 1  阅读 - 1120

2022-2023 ICPC East Central North America Regional Contest (ECNA 2022):JL

前言

这场状态绝对不对劲,rk倒1没啥可说的。


A. A-Mazing Puzzle

这题绝对能做!等我抽空回来补!(不挂在这的话,说不定就摆烂了)


J. Simple Solitaire

题意

英语阅读理解。自己读去。解法也不写了,纯暴力模拟。

认罪认罚具结书

好像是第一次当战犯吧。大约3个半小时的时候,我自告奋勇做这个题,然后读错题意反复WA on 3,后来队友来帮忙,由于题太难读,我直接告诉了他错误的题意,于是我俩一起坐牢直到比赛结束……
不说了,直接上代码。

代码

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
const int N = 105;
const ll P = 998244353;

string s;
struct node{
    char u, v;
}p[N];
int tp;

int main(){
    for(int i = 1; i <= 52; i++){
        cin >> s;
        tp++;
        p[tp].u = s[0];
        p[tp].v = s[1];
        int j = tp;
        while(j >= 4){
            while(j >= 4){
                if(p[j].u == p[j - 3].u){
                    for(int k = j - 3; k <= tp - 4; k++){
                        p[k] = p[k + 4];
                    }
                    tp -= 4;
                    j = tp;
                    continue;
                }
                j--;
            }
            j = tp;
            while(j >= 4){
                if(p[j].v == p[j - 3].v){
                    p[j - 3] = p[j - 2];
                    p[j - 2] = p[j - 1];
                    for(int k = j - 1; k <= tp - 2; k++){
                        p[k] = p[k + 2];
                    }
                    tp -= 2;
                    j = tp;
                    break;
                }
                j--;
            }
        }
    }
    cout << tp;
    for(int i = 1; i <= tp; i++){
        cout << " " << p[i].u << p[i].v;
    }
    return 0;
}


L. Which Warehouse?

题意

给定n个仓库,每两个仓库都直接相连(但是,假设有两个仓库s和t,从s直接到t的路程,不一定等于从t到s的路程)。有m种产品,每个仓库都存放了一定数量的每种产品。如果从仓库s到t的路程是k,那么把n个产品从u转移到v的花费就是n*k。现在要把每一种产品都全部转移到某一个仓库,两种产品聚集到的仓库不能相同。换句话说,聚集之后应该有m个仓库各有一种产品,其他仓库全是空的。问最小花费。

解法

如果了解过二分图最大权完美匹配,那这题几乎就是个裸板。首先跑最短路预处理出所有的把某一种产品聚集到某一个点的最小花费。然后跑一次KM即可,左侧为仓库,右侧为产品种类,两点相连意为当前仓库用来聚集当前产品。注意到KM算法要求两侧点数相等,所以要在右侧补上n-m个点,这些点和左侧每个点的边权都为0,表示左侧这n-m个仓库不用来聚集任何产品。

代码

目前还不是很理解KM,只能当个黑盒子来用……

反复WA on 15中,红温了,敬请期待
posted on   C12AK  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示