fork download
  1. #include <cstdio>
  2. #include <cstdlib>
  3. #include <iostream>
  4. #include <string>
  5. #include <cstring>
  6. #include <cmath>
  7. #include <ctime>
  8. #include <algorithm>
  9. #include <set>
  10. #include <map>
  11. #include <queue>
  12. #include <vector>
  13.  
  14. #define REP(I,A,B) for(int I=A,_END_=B;I<=_END_;I++)
  15. #define REPD(I,A,B) for(int I=A,_END_=B;I>=_END_;I--)
  16. #define RI(X) X=Readint()
  17. #define RII(X,Y) RI(X),RI(Y)
  18. #define RIII(X,Y,Z) RI(X),RI(Y),RI(Z)
  19. #define RS(X) scanf("%s",X)
  20. #define RD(X) scanf("%lf",&X)
  21. #define GCH getchar()
  22. #define PCH(X) putchar(X)
  23. #define MS(X,Y) memset(X,Y,sizeof(X))
  24. #define MC(X,Y,var,len) memcpy(X,Y,sizeof(var)*(len))
  25. #define debug(...) fprintf(stderr,__VA_ARGS__)
  26. #define pb(X) push_back(X)
  27. #define mp(A,B) make_pair(A,B)
  28. #define fr first
  29. #define sc second
  30. #define lch(p) (p+p)
  31. #define rch(p) (p+p+1)
  32. #define lowbit(X) ((X)&(-(X)))
  33.  
  34. using namespace std;
  35.  
  36. typedef pair<int,int> poi;
  37.  
  38. inline int Readint()
  39. {
  40. int ret=0;
  41. int f=1;
  42. char ch;
  43. do
  44. {
  45. ch=GCH;
  46. if (ch=='-') f*=-1;
  47. }while(ch>=0 && (ch<'0' || ch>'9'));
  48.  
  49. while ('0'<=ch && ch<='9')
  50. {
  51. ret=ret*10+ch-'0';
  52. ch=GCH;
  53. }
  54. return ret*f;
  55. }
  56.  
  57. void open()
  58. {
  59. freopen("2329.in","w",stdout);
  60. }
  61. void close()
  62. {
  63. fclose(stdin);
  64. fclose(stdout);
  65. }
  66.  
  67. int n,m;
  68. char op[][10]={"Replace","Swap","Invert","Query"};
  69.  
  70. char rb()
  71. {
  72. if (rand()&1)
  73. return '(';
  74. else
  75. return ')';
  76. }
  77.  
  78. void init()
  79. {
  80. n=rand()%20+2;
  81. m=rand()%10+1;
  82. printf("%d %d\n",n,m);
  83. REP(i,1,n)
  84. printf("%c",rb());
  85. printf("\n");
  86. int kind,x,y;
  87. REP(i,1,m)
  88. {
  89. kind=rand()%4;
  90. x=rand()%n+1;
  91. y=rand()%n+1;
  92. if (x>y) swap(x,y);
  93. if (!kind)
  94. printf("%s %d %d %c\n",op[kind],x,y,rb());
  95. else if (kind==3)
  96. {
  97. x=rand()%(n-1)+1;
  98. y=rand()%(n-1)+1;
  99. if (x>y) swap(x,y);
  100. if ((y-x+1)&1) y++;
  101. printf("%s %d %d\n",op[kind],x,y);
  102. }
  103. else
  104. printf("%s %d %d\n",op[kind],x,y);
  105. }
  106. }
  107.  
  108. int main()
  109. {
  110. srand(time(NULL));
  111. //open();
  112. int _=0;
  113. init();
  114. close();
  115. return 0;
  116. }
  117.  
Success #stdin #stdout 0s 3456KB
stdin
Standard input is empty
stdout
4 1
((()
Replace 3 4 )