#P2526. A. 食物生产线(produce)

A. 食物生产线(produce)

Description

<img src="./1950/file/20220707093200_51352.png" alt="" />

#include<cstdio>
#include<random>
using namespace std;
std::mt19937 rnd;
int n,m,k,A,B,seed,cas;
inline int myrand(int l,int r){int d=(r-l+1),x=rnd();x=(x%d+d)%d;return x+l;}
inline void zwap(int &l,int &r){if(l>r)l^=r^=l^=r;}
inline void get1(int &t,int &l,int &r){t=myrand(0,1);if(7<=cas && cas<=8)t=0;l=myrand(1,n-(!t?A:B)+1);!t?r=(l+A-1):r=(l+B-1);}
inline void get2(int &l,int &r){l=myrand(1,n);r=myrand(1,n);zwap(l,r);}
int main(){
    scanf("%d%d%d%d%d%d%d",&n,&m,&k,&A,&B,&seed,&cas);
	printf("%d %d %d %d %d\n",n,m,k,A,B);
    rnd=std::mt19937(seed);
    for(int i=1;i<=m;i++){int t,l,r;get1(t,l,r);printf("%d %d %d\n",t,l,r);}
    for(int i=1;i<=k;i++){int l,r;get2(l,r);printf("%d %d\n",l,r);}
    return 0;
}

<img src="./1950/file/20220707093350_55547.png" alt="" />

<br />

4 2 3 1 2 513 0
10