fork download
  1. #pragma GCC optimize ("Ofast")
  2. #include<bits/stdc++.h>
  3. using namespace std;
  4. template<class S, class T> inline S min_L(S a,T b){
  5. return a<=b?a:b;
  6. }
  7. #define main dummy_main
  8. int main(){
  9. return 0;
  10. }
  11. #undef main
  12. class Solution{
  13. public:
  14. string longestDiverseString(int a, int b, int c){
  15. string res;
  16. char aa = 'a';
  17. char bb = 'b';
  18. char cc = 'c';
  19. if(a < b){
  20. swap(a, b);
  21. swap(aa, bb);
  22. }
  23. if(b < c){
  24. swap(b, c);
  25. swap(bb, cc);
  26. }
  27. if(a < b){
  28. swap(a, b);
  29. swap(aa, bb);
  30. }
  31. for(;;){
  32. if(b==c && c==0){
  33. int e98WHCEY;
  34. for(e98WHCEY=(0);e98WHCEY<(min_L(a, 2));e98WHCEY++){
  35. res += aa;
  36. a--;
  37. }
  38. break;
  39. }
  40. if(a > b){
  41. res += aa;
  42. a--;
  43. if(a > b){
  44. res += aa;
  45. a--;
  46. }
  47. if(b == c){
  48. res += cc;
  49. c--;
  50. }
  51. else{
  52. res += bb;
  53. b--;
  54. }
  55. continue;
  56. }
  57. res += aa;
  58. a--;
  59. res += bb;
  60. b--;
  61. if(c){
  62. res += cc;
  63. c--;
  64. }
  65. }
  66. return res;
  67. }
  68. }
  69. ;
  70. // cLay varsion 20200408-1
  71.  
  72. // --- original code ---
  73. // #define main dummy_main
  74. // {}
  75. // #undef main
  76. //
  77. // class Solution {
  78. // public:
  79. // string longestDiverseString(int a, int b, int c) {
  80. // string res;
  81. // char aa = 'a', bb = 'b', cc = 'c';
  82. // if(a < b) swap(a, b), swap(aa, bb);
  83. // if(b < c) swap(b, c), swap(bb, cc);
  84. // if(a < b) swap(a, b), swap(aa, bb);
  85. //
  86. // for(;;){
  87. // if(b==c==0){
  88. // rep(min(a,2)) res += aa, a--;
  89. // break;
  90. // }
  91. //
  92. // if(a > b){
  93. // res += aa, a--;
  94. // if(a > b) res += aa, a--;
  95. // if(b == c) res += cc, c--;
  96. // else res += bb, b--;
  97. // continue;
  98. // }
  99. //
  100. // res += aa, a--;
  101. // res += bb, b--;
  102. // if(c) res += cc, c--;
  103. // }
  104. //
  105. // return res;
  106. // }
  107. // };
  108.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':
(.text+0x20): undefined reference to `main'
collect2: error: ld returned 1 exit status
stdout
Standard output is empty