fork download
  1. #pragma GCC optimize ("Ofast")
  2. #include<bits/stdc++.h>
  3. using namespace std;
  4. template<class S, class T> inline S chmin(S &a, T b){
  5. if(a>b){
  6. a=b;
  7. }
  8. return a;
  9. }
  10. #define main dummy_main
  11. int main(){
  12. return 0;
  13. }
  14. #undef main
  15. class Solution{
  16. public:
  17. string largestMultipleOfThree(vector<int>& A){
  18. int i;
  19. int j;
  20. int s = 0;
  21. int cnt[10] = {};
  22. string res;
  23. for(i=(0);i<(A.size());i++){
  24. cnt[A[i]]++;
  25. }
  26. for(i=(0);i<(10);i++){
  27. s += cnt[i] * i;
  28. }
  29. if(s%3!=0){
  30. for(i=(0);i<(10);i++){
  31. if(cnt[i] && (s-i)%3==0){
  32. break;
  33. }
  34. }
  35. if(i < 10){
  36. cnt[i]--;
  37. }
  38. else{
  39. for(i=(0);i<(10);i++){
  40. for(j=(0);j<(i+1);j++){
  41. if((s-i-j)%3==0 && cnt[i] && cnt[j] && (i!=j || cnt[i]>=2)){
  42. goto xr20shxY;
  43. }
  44. }
  45. }
  46. xr20shxY:;
  47. if(i==10){
  48. return "";
  49. }
  50. cnt[i]--;
  51. cnt[j]--;
  52. }
  53. }
  54. {
  55. int KrdatlYV;
  56. int ao_dF3pO;
  57. if(10==0){
  58. ao_dF3pO = 0;
  59. }
  60. else{
  61. ao_dF3pO = cnt[0];
  62. for(KrdatlYV=(1);KrdatlYV<(10);KrdatlYV++){
  63. ao_dF3pO += cnt[KrdatlYV];
  64. }
  65. }
  66. s =ao_dF3pO;
  67. }
  68. if(s==cnt[0]){
  69. chmin(cnt[0], 1);
  70. }
  71. for(i=(10)-1;i>=(0);i--){
  72. int APIVbQlN;
  73. for(APIVbQlN=(0);APIVbQlN<(cnt[i]);APIVbQlN++){
  74. res += (char)('0'+i);
  75. }
  76. }
  77. return res;
  78. }
  79. }
  80. ;
  81. // cLay varsion 20200227-1
  82.  
  83. // --- original code ---
  84. // #define main dummy_main
  85. // {}
  86. // #undef main
  87. //
  88. // class Solution {
  89. // public:
  90. // string largestMultipleOfThree(vector<int>& A) {
  91. // int i, j, s = 0, cnt[10] = {};
  92. // string res;
  93. // rep(i,A.size()) cnt[A[i]]++;
  94. // rep(i,10) s += cnt[i] * i;
  95. //
  96. // if(s%3!=0){
  97. // rep(i,10) if(cnt[i] && (s-i)%3==0) break;
  98. // if(i < 10){
  99. // cnt[i]--;
  100. // } else {
  101. // rep(i,10) rep(j,i+1) if((s-i-j)%3==0 && cnt[i] && cnt[j] && (i!=j || cnt[i]>=2)) break_break;
  102. // if(i==10) return "";
  103. // cnt[i]--;
  104. // cnt[j]--;
  105. // }
  106. // }
  107. //
  108. // s = sum(cnt(10));
  109. // if(s==cnt[0]) cnt[0] <?= 1;
  110. // rrep(i,10) rep(cnt[i]) res += (char)('0'+i);
  111. // return res;
  112. // }
  113. // };
  114.  
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