#include <bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
char str[N];
int in[N];
struct Node{
int s,f,t;
};
vector<Node> procs[N];
Node q[N];
int n;
bool deal()
{
int top = 0;
q[++ top] = procs[0].back(); procs[0].pop_back(); in[0] = 1;
while(top)
{
auto cur = q[top];
int s1 = cur.s, f1 = cur.f, t1 = cur.t;
if(procs[t1].empty() || in[t1] ) return false;
auto nxt = procs[t1].back(); procs[t1].pop_back();
int s2 = nxt.s, f2 = nxt.f, t2 = nxt.t;
if(f1 != f2 && s1 == t2 && t1 == s2) top --,in[s1] = 0;
else q[++ top] = nxt, in[s2] = 1;
if(!top)
{
for(int i = 0; i < n; ++i)
{
if(!procs[i].empty())
{
q[++ top] = procs[i].back();
procs[i].pop_back();
break;
}
}
}
}
return true;
}
int main()
{
int T;
scanf("%d %d\n", &T,&n);
while
CCF CSP 消息传递接口
最新推荐文章于 2022-02-25 16:16:27 发布
本文详细介绍了CCF CSP(Communications and Computing Facility Common Services Provider)的消息传递接口,包括其工作原理、主要功能和使用场景。通过学习,读者将能够掌握如何在分布式系统中利用这些接口实现高效、可靠的数据通信。
摘要由CSDN通过智能技术生成