problemscpp
A collection of my answers to algorithm problems in c++.
载入中...
搜索中...
未找到
acwing.h
浏览该文件的文档.
1#ifndef PROBLEMSCPP_ACWING_H
2#define PROBLEMSCPP_ACWING_H
3
4#include <iostream>
5#include <map>
6#include <set>
7#include <unordered_map>
8#include <unordered_set>
9#include <utility>
10#include <vector>
11
12using namespace std;
13
14namespace acwing {
15 struct ListNode {
16 int val;
18
19 explicit ListNode(int x): val(x), next(nullptr) {}
20 };
21
22 class acwing1 {
23 public:
24 static int main(istream & /*cin*/, ostream & /*cout*/);
25 };
26
27 class acwing4200 {
28 public:
29 static int main(istream & /*cin*/, ostream & /*cout*/);
30 };
31
32 class acwing4201 {
33 public:
34 static int main(istream & /*cin*/, ostream & /*cout*/);
35 };
36
37 class acwing608 {
38 public:
39 static int main(istream & /*cin*/, ostream & /*cout*/);
40 };
41
42 class acwing604 {
43 public:
44 static int main(istream & /*cin*/, ostream & /*cout*/);
45 };
46
47 class acwing606 {
48 public:
49 static int main(istream & /*cin*/, ostream & /*cout*/);
50 };
51
52 class acwing609 {
53 public:
54 static int main(istream & /*cin*/, ostream & /*cout*/);
55 };
56
57 class acwing615 {
58 public:
59 static int main(istream & /*cin*/, ostream & /*cout*/);
60 };
61
62 class acwing616 {
63 public:
64 static int main(istream & /*cin*/, ostream & /*cout*/);
65 };
66
67 class acwing653 {
68 public:
69 static int main(istream & /*cin*/, ostream & /*cout*/);
70 };
71
72 class acwing4203 {
73 public:
74 static int main(istream & /*cin*/, ostream & /*cout*/);
75 };
76
77 class acwing4204 {
78 public:
79 static int main(istream & /*cin*/, ostream & /*cout*/);
80 };
81
82 class acwing2058 {
83 public:
84 static int main(istream & /*cin*/, ostream & /*cout*/);
85 };
86
90 class acwing654 {
91 public:
92 static int main(istream & /*cin*/, ostream & /*cout*/);
93 };
94
98 class acwing605 {
99 public:
100 static int main(istream & /*cin*/, ostream & /*cout*/);
101 };
102
107 public:
108 static int main(istream & /*cin*/, ostream & /*cout*/);
109 };
110
114 namespace acwing2060 {
116 public:
117 static int main(istream & /*cin*/, ostream & /*cout*/);
118 };
119
120 struct point {
121 int x;
122 int y;
123
124 point() = default;
125
126 point(int x, int y): x(x), y(y){};
127 };
128
129 struct pointhash {
130 size_t operator()(const point & /*p*/) const;
131 };
132
133 struct pointequal {
134 bool operator()(const point & /*p1*/, const point & /*p2*/) const;
135 };
136
137 void flood(point /*first*/, bool /*occupy*/[55][55],
138 unordered_set<point, pointhash, pointequal> * /*edge*/,
139 char /*cowhide*/[55][55], int /*n*/, int /*m*/);
140 }// namespace acwing2060
141
145 namespace acwing2019 {
146 const int N = 1000;
147
148 struct point {
149 int x;
150 int y;
151 int step;
152
153 point(int x, int y, int step): x(x), y(y), step(step){};
154 };
155
156 int bfs(point /*start*/, int ** /*field*/, int /*max_x*/, int /*max_y*/);
157
159 public:
160 static int main(istream & /*cin*/, ostream & /*cout*/);
161 };
162 }// namespace acwing2019
163
167 class acwing611 {
168 public:
169 static int main(istream & /*cin*/, ostream & /*cout*/);
170 };
171
175 class acwing612 {
176 public:
177 static int main(istream & /*cin*/, ostream & /*cout*/);
178 };
179
184 public:
185 static int main(istream & /*cin*/, ostream & /*cout*/);
186 };
187
191 class acwing607 {
192 public:
193 static int main(istream & /*cin*/, ostream & /*cout*/);
194 };
195
199 class acwing613 {
200 public:
201 static int main(istream & /*cin*/, ostream & /*cout*/);
202 };
203
207 class acwing610 {
208 public:
209 static int main(istream & /*cin*/, ostream & /*cout*/);
210 };
211
215 class acwing614 {
216 public:
217 static int main(istream & /*cin*/, ostream & /*cout*/);
218 };
219
224 public:
225 static int main(istream & /*cin*/, ostream & /*cout*/);
226
237 static int dfs(bool stage, char horseshoes[5][5], const bool picked[5][5],
238 int count, int level, int x, int y, int n);
239 };
240
244 class acwing617 {
245 public:
246 static int main(istream & /*cin*/, ostream & /*cout*/);
247 };
248
252 class acwing618 {
253 public:
254 static int main(istream & /*cin*/, ostream & /*cout*/);
255 };
256
259 public:
260 static int main(istream & /*cin*/, ostream & /*cout*/);
261 };
262
265 public:
266 static int main(istream & /*cin*/, ostream & /*cout*/);
267 };
268
270 namespace acwing4208 {
274 struct trie_node {
278 int val;
287
289
294 void insert(string str);
295
299 void display();
300
305 int count();
306 };
307
309 public:
310 static int main(istream & /*cin*/, ostream & /*cout*/);
311 };
312 }// namespace acwing4208
313
316 public:
317 static int main(istream & /*cin*/, ostream & /*cout*/);
318
319 static bool cmp(char x, char y);
320 };
321
323 class acwing656 {
324 public:
325 static int main(istream & /*cin*/, ostream & /*cout*/);
326 };
327
329 class acwing655 {
330 public:
331 static int main(istream & /*cin*/, ostream & /*cout*/);
332 };
333
337 class acwing665 {
338 public:
339 static int main(istream & /*cin*/, ostream & /*cout*/);
340 };
341
345 class acwing657 {
346 public:
347 static int main(istream & /*cin*/, ostream & /*cout*/);
348 };
349
354 public:
355 static int main(istream & /*cin*/, ostream & /*cout*/);
356 };
357
359 class acwing660 {
360 public:
361 static int main(istream & /*cin*/, ostream & /*cout*/);
362 };
363
365 class acwing671 {
366 public:
367 static int main(istream & /*cin*/, ostream & /*cout*/);
368 };
369
371 namespace acwing1978 {
372 struct path {
373 int a;
374 int b;
375
376 path(): a(0), b(0){};
377
378 path(int a, int b): a(a), b(b){};
379 bool operator<(const path &p) const;
380 };
381
383 public:
384 static int main(istream & /*cin*/, ostream & /*cout*/);
385 };
386 }// namespace acwing1978
387
391 class acwing659 {
392 public:
393 static int main(istream & /*cin*/, ostream & /*cout*/);
394 };
395
399 class acwing662 {
400 public:
401 static int main(istream & /*cin*/, ostream & /*cout*/);
402 };
403
408 public:
409 static int main(istream & /*cin*/, ostream & /*cout*/);
410 };
411
415 class acwing664 {
416 public:
417 static int main(istream & /*cin*/, ostream & /*cout*/);
418 };
419
423 class acwing666 {
424 public:
425 static int main(istream & /*cin*/, ostream & /*cout*/);
426 };
427
432 private:
433 int fsm[1 << 16] = {};
434 unsigned int n{};
435
436 public:
437 int main(istream & /*cin*/, ostream & /*cout*/);
438 unsigned int get_next(unsigned int status);
439 [[nodiscard]] bool *decompress(unsigned int status) const;
440 unsigned int compress(const bool * /*bulbs*/) const;
441 };
442
444 class acwing667 {
445 public:
446 static int main(istream & /*cin*/, ostream & /*cout*/);
447 };
448
450 class acwing668 {
451 public:
452 static int main(istream & /*cin*/, ostream & /*cout*/);
453 };
454
457 public:
458 static int main(istream & /*cin*/, ostream & /*cout*/);
459 };
460
462 class acwing669 {
463 public:
464 static int main(istream &cin, ostream &cout);
465 };
466
468 class acwing672 {
469 public:
470 static int main(istream &cin, ostream &cout);
471 };
472
475 public:
476 static int main(istream &cin, ostream &cout);
477 };
478
483 public:
484 static int main(istream &cin, ostream &cout);
485 };
486
491 public:
492 static int main(istream &cin, ostream &cout);
493 };
494
499 public:
500 static int main(istream &cin, ostream &cout);
501 static unsigned int no2(unsigned long long a);
502 static unsigned int no3(unsigned long long a);
503 static bool cmp(unsigned long long a, unsigned long long b);
504 };
505
507 class acwing670 {
508 public:
509 static int main(istream &cin, ostream &cout);
510 };
511
513 class acwing633 {
514 public:
515 static int main(istream &cin, ostream &cout);
516 };
517
520 public:
521 static int main(istream &cin, ostream &cout);
522 };
523
527 class acwing658 {
528 public:
529 static int main(istream &cin, ostream &cout);
530 };
531
535 class acwing661 {
536 public:
537 static int main(istream &cin, ostream &cout);
538 };
539
544 namespace acwing1929 {
558
562 struct step {
566 unsigned int x;
568 unsigned int y;
569
570 step(direction d, unsigned int x, unsigned int y): d(d), x(x), y(y){};
571 };
572
573 struct step_hash {
574 unsigned long operator()(const step & /*s*/) const;
575 };
576
577 struct step_equal {
578 bool operator()(const step & /*main*/, const step & /*tmp*/) const;
579 };
580
581 class Solution {
582 private:
584 char mirrors[1000][1000] = {0};
586 unsigned int left_map[1000][1000] = {0};
588 unsigned int right_map[1000][1000] = {0};
590 unsigned int up_map[1000][1000] = {0};
592 unsigned int down_map[1000][1000] = {0};
594 unsigned short n{};
596 unsigned short m{};
597
598 public:
599 int main(istream &cin, ostream &cout);
607 unsigned int count_reflect(direction d, unsigned int x, unsigned int y);
613 unsigned (*get_record(direction d))[1000][1000];
614 };
615
622 direction reflect(direction d, char mirror);
628 direction operator!(const direction &d);
629 }// namespace acwing1929
630
632 class acwing708 {
633 public:
634 static int main(istream &cin, ostream &cout);
635 };
636
638 class acwing715 {
639 public:
640 static int main(istream &cin, ostream &cout);
641 };
642
645 public:
646 static int main(istream &cin, ostream &cout);
647 };
648
650 class acwing709 {
651 public:
652 static int main(istream &cin, ostream &cout);
653 };
654
656 class acwing710 {
657 public:
658 static int main(istream &cin, ostream &cout);
659 };
660
663 public:
664 static int main(istream &cin, ostream &cout);
665 };
666
670 class acwing712 {
671 public:
672 static int main(istream &cin, ostream &cout);
673 };
674
678 class acwing711 {
679 public:
680 static int main(istream &cin, ostream &cout);
681 };
682
687 public:
688 static int main(istream &cin, ostream &cout);
689 };
690
692 class acwing714 {
693 public:
694 static int main(istream &cin, ostream &cout);
695 };
696
698 class acwing718 {
699 public:
700 static int main(istream &cin, ostream &cout);
701 };
702
705 public:
706 static int main(istream &cin, ostream &cout);
707 };
708
713 public:
714 static int main(istream &cin, ostream &cout);
715 };
716
721 public:
722 static int main(istream &cin, ostream &cout);
723 static unsigned long long get_min(vector<char> ops,
724 vector<unsigned long long> vec);
725 };
726
731 public:
732 static int main(istream &cin, ostream &cout);
733 };
734
738 class acwing716 {
739 public:
740 static int main(istream &cin, ostream &cout);
741 };
742
746 class acwing713 {
747 public:
748 static int main(istream &cin, ostream &cout);
749 };
750
754 class acwing721 {
755 public:
756 static int main(istream &cin, ostream &cout);
757 };
758
762 class acwing719 {
763 public:
764 static int main(istream &cin, ostream &cout);
765 };
766
771 public:
772 static int main(istream &cin, ostream &cout);
773 };
774
776 class acwing720 {
777 public:
778 static int main(istream &cin, ostream &cout);
779 };
780
782 class acwing717 {
783 public:
784 static int main(istream &cin, ostream &cout);
785 };
786
789 public:
790 static int main(istream &cin, ostream &cout);
791 };
792
794 class acwing724 {
795 public:
796 static int main(istream &cin, ostream &cout);
797 };
798
800 class acwing722 {
801 public:
802 static int main(istream &cin, ostream &cout);
803 };
804
807 public:
808 static int main(istream &cin, ostream &cout);
809 };
810
812 class acwing723 {
813 public:
814 static int main(istream &cin, ostream &cout);
815 };
816
818 class acwing725 {
819 public:
820 static int main(istream &cin, ostream &cout);
821 };
822
824 namespace acwing1826 {
825 struct cmprow {
826 bool operator()(const pair<unsigned int, unsigned int> &left,
827 const pair<unsigned int, unsigned int> &right) const;
828 };
829
830 struct cmpcol {
831 bool operator()(const pair<unsigned int, unsigned int> &left,
832 const pair<unsigned int, unsigned int> &right) const;
833 };
834
836 public:
837 static int main(istream &cin, ostream &cout);
838 };
839 }// namespace acwing1826
840
843 public:
844 static int main(istream &cin, ostream &cout);
845 };
846
848 class acwing726 {
849 public:
850 static int main(istream &cin, ostream &cout);
851 };
852
854 class acwing727 {
855 public:
856 static int main(istream &cin, ostream &cout);
857 };
858
862 class acwing737 {
863 public:
864 static int main(istream &cin, ostream &cout);
865 };
866
870 class acwing740 {
871 public:
872 static int main(istream &cin, ostream &cout);
873 };
874
879 public:
880 static int main(istream &cin, ostream &cout);
881 };
882
887 public:
888 static int main(istream &cin, ostream &cout);
889 };
890
895 public:
896 static int main(istream &cin, ostream &cout);
897 };
898
903 vector<char> ops;
904 vector<pair<int, int>> forth;
905 vector<pair<int, int>> back;
906 unsigned int n;
907 int a;
908 int b;
909
910 public:
911 int main(istream &cin, ostream &cout);
912 [[nodiscard]] bool check(int len) const;
913 };
914
918 class acwing738 {
919 public:
920 static int main(istream &cin, ostream &cout);
921 };
922
926 class acwing741 {
927 public:
928 static int main(istream &cin, ostream &cout);
929 };
930
933 public:
934 static int main(istream &cin, ostream &cout);
935 };
936
938 class acwing739 {
939 public:
940 static int main(istream &cin, ostream &cout);
941 };
942
944 class acwing742 {
945 public:
946 static int main(istream &cin, ostream &cout);
947 };
948
951 public:
952 static int main(istream &cin, ostream &cout);
953 };
954
956 class acwing743 {
957 public:
958 static int main(istream &cin, ostream &cout);
959 };
960
962 class acwing744 {
963 public:
964 static int main(istream &cin, ostream &cout);
965 };
966
971 public:
972 static int main(istream &cin, ostream &cout);
973 };
974
979 public:
980 static int main(istream &cin, ostream &cout);
981 };
982
984 class acwing745 {
985 public:
986 static int main(istream &cin, ostream &cout);
987 };
988
990 class acwing748 {
991 public:
992 static int main(istream &cin, ostream &cout);
993 };
994
996 class acwing747 {
997 public:
998 static int main(istream &cin, ostream &cout);
999 };
1000
1003 public:
1004 static int main(istream &cin, ostream &cout);
1005 };
1006
1009 public:
1010 static int main(istream &cin, ostream &cout);
1011 };
1012
1017 public:
1018 static int main(istream &cin, ostream &cout);
1019 };
1020
1025 public:
1026 static int main(istream &cin, ostream &cout);
1027 };
1028
1033 int n = 0;
1034 int m = 0;
1035 int *a = nullptr;
1036 int *b = nullptr;
1037 bool *found = nullptr;
1038 bool **connected = nullptr;
1039 int *match = nullptr;
1040
1041 public:
1042 int main(istream &cin, ostream &cout);
1043 bool find(int i);
1044 };
1045
1050 public:
1051 static int main(istream &cin, ostream &cout);
1052 };
1053
1058 public:
1059 static int main(istream &cin, ostream &cout);
1060 };
1061
1064 public:
1065 static int main(istream &cin, ostream &cout);
1066 };
1067
1070 public:
1071 static int main(istream &cin, ostream &cout);
1072 };
1073
1076 public:
1077 static int main(istream &cin, ostream &cout);
1078 };
1079
1082 public:
1083 static int main(istream &cin, ostream &cout);
1084 };
1085
1088 public:
1089 static int main(istream &cin, ostream &cout);
1090 };
1091
1094 public:
1095 static int main(istream &cin, ostream &cout);
1096 };
1097
1100 public:
1101 static int main(istream &cin, ostream &cout);
1102 };
1103
1106 public:
1107 static int main(istream &cin, ostream &cout);
1108 };
1109
1112 public:
1113 static int main(istream &cin, ostream &cout);
1114 };
1115
1118 public:
1119 static int main(istream &cin, ostream &cout);
1120 };
1121
1124 public:
1125 static int main(istream &cin, ostream &cout);
1126 };
1127
1130 public:
1131 static int main(istream &cin, ostream &cout);
1132 };
1133
1138 public:
1139 static int main(istream &cin, ostream &cout);
1140 };
1141
1146 public:
1147 static int main(istream &cin, ostream &cout);
1148 };
1149
1154 public:
1155 static int main(istream &cin, ostream &cout);
1156 };
1157
1160 public:
1161 static int main(istream &cin, ostream &cout);
1162 };
1163
1166 public:
1167 static int main(istream &cin, ostream &cout);
1168 };
1169
1172 public:
1173 static int main(istream &cin, ostream &cout);
1174 };
1175
1180 public:
1181 static int main(istream &cin, ostream &cout);
1182 };
1183
1188 public:
1189 static int main(istream &cin, ostream &cout);
1190 };
1191
1196 public:
1197 static int main(istream &cin, ostream &cout);
1198 };
1199
1204 public:
1205 static int main(istream &cin, ostream &cout);
1206 };
1207
1212 public:
1213 static int main(istream &cin, ostream &cout);
1214 };
1215
1218 public:
1219 static int main(istream &cin, ostream &cout);
1220 };
1221
1224 public:
1225 static int main(istream &cin, ostream &cout);
1226 };
1227
1230 public:
1231 static int main(istream &cin, ostream &cout);
1232 };
1233
1236 public:
1237 static int main(istream &cin, ostream &cout);
1238 };
1239
1242 public:
1243 static int main(istream &cin, ostream &cout);
1244 };
1245
1248 public:
1249 static int main(istream &cin, ostream &cout);
1250 };
1251
1254 public:
1255 static int main(istream &cin, ostream &cout);
1256 };
1257
1260 public:
1261 static int main(istream &cin, ostream &cout);
1262 };
1263
1265 namespace acwing1660 {
1266 struct cow {
1267 int x;
1269 bool operator<(const cow & /*c*/) const;
1270 };
1271
1273 public:
1274 static int main(istream &cin, ostream &cout);
1275 };
1276 }// namespace acwing1660
1277
1280 public:
1281 static int main(istream &cin, ostream &cout);
1282 };
1283
1286 public:
1287 static int main(istream &cin, ostream &cout);
1288 };
1289
1292 public:
1293 static int main(istream &cin, ostream &cout);
1294 };
1295
1298 public:
1299 static int main(istream &cin, ostream &cout);
1300 };
1301
1304 public:
1305 static int main(istream &cin, ostream &cout);
1306 };
1307
1312 public:
1313 static int main(istream &cin, ostream &cout);
1314 };
1315
1320 public:
1321 static int main(istream &cin, ostream &cout);
1322 };
1323
1328 public:
1329 static int main(istream &cin, ostream &cout);
1330 static unsigned int str2int(const string &str);
1331 };
1332
1337 public:
1338 static int main(istream &cin, ostream &cout);
1339 };
1340
1345 public:
1346 static int main(istream &cin, ostream &cout);
1347 };
1348
1351 public:
1352 static int fact(int n);
1353 static int main(istream &cin, ostream &cout);
1354 };
1355
1358 public:
1359 static int abs(int n);
1360 static int main(istream &cin, ostream &cout);
1361 };
1362
1365 public:
1366 static int main(istream &cin, ostream &cout);
1367 static int max(int x, int y);
1368 };
1369
1372 public:
1373 static int main(istream &cin, ostream &cout);
1374 static double add(double x, double y);
1375 };
1376
1379 public:
1380 static int main(istream &cin, ostream &cout);
1381 static int gcd(int a, int b);
1382 };
1383
1386 public:
1387 static int sum(int l, int r);
1388 static int main(istream &cin, ostream &cout);
1389 };
1390
1393 public:
1394 static int main(istream &cin, ostream &cout);
1395 static void swap(int &x, int &y);
1396 };
1397
1400 public:
1401 static int main(istream &cin, ostream &cout);
1402 static int lcm(int a, int b);
1403 };
1404
1407 public:
1408 static int main(istream &cin, ostream &cout);
1409 static void print(int a[], int size, ostream &cout);
1410 };
1411
1414 public:
1415 static int main(istream &cin, ostream &cout);
1416 static void copy(const int a[], int b[], int size);
1417 };
1418
1421 public:
1422 static int main(istream &cin, ostream &cout);
1423 static void print2D(int a[][100], int row, int col, ostream &cout);
1424 };
1425
1428 public:
1429 static int main(istream &cin, ostream &cout);
1430 static void print(char str[], ostream &cout);
1431 };
1432
1437 public:
1438 static int main(istream &cin, ostream &cout);
1439 };
1440
1445 public:
1446 static int main(istream &cin, ostream &cout);
1447 };
1448
1453 public:
1454 static int main(istream &cin, ostream &cout);
1455 static string dfs(int i, bool free, unordered_map<int, int> um, string &b);
1456 };
1457
1462 public:
1463 static int main(istream &cin, ostream &cout);
1464 static int factorial(int n);
1465 };
1466
1471 public:
1472 static int main(istream &cin, ostream &cout);
1473 static void reverse(int a[], int size);
1474 };
1475
1478 public:
1479 static int main(istream &cin, ostream &cout);
1480 static int fibb(int n);
1481 };
1482
1485 public:
1486 static int main(istream &cin, ostream &cout);
1488 static int get_unique_count(int a[], int n);
1489 };
1490
1493 public:
1494 static int main(istream &cin, ostream &cout);
1495 static void sort(int a[], int l, int r);
1496 };
1497
1500 public:
1501 static int main(istream &cin, ostream &cout);
1502 };
1503
1506 public:
1507 static int main(istream &cin, ostream &cout);
1508 };
1509
1512 public:
1513 static int main(istream &cin, ostream &cout);
1514 static void dfs(vector<int> &vec, set<int> &s, ostream &cout);
1515 };
1516
1518 namespace acwing21 {
1519 class Solution {
1520 public:
1521 static int Fibonacci(int n);
1522 };
1523 }// namespace acwing21
1524
1526 namespace acwing78 {
1527 class Solution {
1528 public:
1529 static string leftRotateString(string str, int n);
1530 };
1531 }// namespace acwing78
1532
1534 namespace acwing16 {
1535 class Solution {
1536 public:
1537 static string replaceSpaces(string &str);
1538 };
1539 }// namespace acwing16
1540
1542 namespace acwing87 {
1543 class Solution {
1544 public:
1545 static int strToInt(string str);
1546 };
1547 }// namespace acwing87
1548
1553 public:
1554 static int main(istream &cin, ostream &cout);
1555 };
1556
1561 public:
1562 static int main(istream &cin, ostream &cout);
1563 };
1564
1568 namespace acwing4310 {
1569 struct TreeNode {
1570 int val;
1571 map<int, TreeNode *> nexts;
1572
1573 explicit TreeNode(int val): val(val) {}
1574 };
1575
1577 unordered_map<int, TreeNode *> um;
1578 unordered_map<int, int> size_tree;
1579 unordered_map<int, int> position;
1580
1581 public:
1582 int main(istream &cin, ostream &cout);
1583 int dfs(vector<int> *vec, TreeNode *node);
1584 };
1585 }// namespace acwing4310
1586
1590 namespace acwing84 {
1591 class Solution {
1592 public:
1593 static int getSum(int n);
1594 };
1595 };// namespace acwing84
1596
1600 namespace acwing35 {
1601 class Solution {
1602 public:
1603 static ListNode *reverseList(ListNode *head);
1604 };
1605 }// namespace acwing35
1606
1610 namespace acwing28 {
1611 class Solution {
1612 public:
1613 static void deleteNode(ListNode *node);
1614 };
1615 }// namespace acwing28
1616
1620 namespace acwing66 {
1621 class Solution {
1622 public:
1623 static ListNode *findFirstCommonNode(ListNode *headA, ListNode *headB);
1624 };
1625 }// namespace acwing66
1626
1628 namespace acwing36 {
1629 class Solution {
1630 public:
1631 static ListNode *merge(ListNode *l1, ListNode *l2);
1632 };
1633 }// namespace acwing36
1634
1636 namespace acwing29 {
1637 class Solution {
1638 public:
1639 static ListNode *deleteDuplication(ListNode *head);
1640 };
1641 }// namespace acwing29
1642
1644 namespace acwing67 {
1645 class Solution {
1646 public:
1647 static int getNumberOfK(vector<int> &nums, int k);
1648 };
1649 }// namespace acwing67
1650
1652 namespace acwing53 {
1653 class Solution {
1654 public:
1655 static vector<int> getLeastNumbers_Solution(vector<int> input, int k);
1656 };
1657 }// namespace acwing53
1658
1660 namespace acwing68 {
1661 class Solution {
1662 public:
1663 static int getMissingNumber(vector<int> &nums);
1664 };
1665 }// namespace acwing68
1666
1668 namespace acwing75 {
1669 class Solution {
1670 public:
1671 static vector<int> findNumbersWithSum(vector<int> &nums, int target);
1672 };
1673 }// namespace acwing75
1674
1676 namespace acwing32 {
1677 class Solution {
1678 public:
1679 static void reOrderArray(vector<int> &array);
1680 };
1681 }// namespace acwing32
1682
1684 namespace acwing51 {
1685 class Solution {
1686 public:
1687 static vector<vector<int>> permutation(vector<int> &nums);
1688 static void dfs(const vector<int> &vec, vector<int> nums,
1689 set<vector<int>> &s);
1690 };
1691 }// namespace acwing51
1692
1694 namespace acwing17 {
1695 class Solution {
1696 public:
1697 static vector<int> printListReversingly(ListNode *head);
1698 };
1699 }// namespace acwing17
1700
1702 namespace acwing26 {
1703 class Solution {
1704 public:
1705 static int NumberOf1(int n);
1706 };
1707 }// namespace acwing26
1708
1710 namespace acwing20 {
1711 class MyQueue {
1712 private:
1713 vector<int> main;
1714 vector<int> tmp;
1715
1716 public:
1718 MyQueue();
1721 void push(int x);
1724 int pop();
1727 int peek();
1730 [[nodiscard]] bool empty() const;
1731 };
1732 }// namespace acwing20
1733
1736 public:
1737 static int main(istream &cin, ostream &cout);
1738 };
1739
1744 public:
1745 static int main(istream &cin, ostream &cout);
1746 };
1747
1752 public:
1753 static int main(istream &cin, ostream &cout);
1754 };
1755
1758 public:
1759 static int main(istream &cin, ostream &cout);
1760 };
1761
1763 namespace acwing3358 {
1764 int main(istream &cin, ostream &cout);
1765 };
1766
1768 namespace acwing3370 {
1769 struct cow {
1770 string name;
1771 int val;
1773 vector<cow *> previous;
1774 vector<cow *> next;
1775
1776 cow(string name, int val, int zodiac);
1777 };
1778
1779 int main(istream &cin, ostream &cout);
1780 int dfs(cow *c);
1781 }// namespace acwing3370
1782
1784 namespace acwing3745 {
1785 int main(istream &cin, ostream &cout);
1786 }
1787
1789 namespace acwing1459 {
1790 int main(istream &cin, ostream &cout);
1791 }// namespace acwing1459
1792
1794 namespace acwing1442 {
1795 int main(istream &cin, ostream &cout);
1796 }
1797
1801 namespace acwing4314 {
1802 int main(istream &cin, ostream &cout);
1803 }
1804
1808 namespace acwing4315 {
1809 int main(istream &cin, ostream &cout);
1810 }
1811
1813 namespace acwing1671 {
1814 int main(istream &cin, ostream &cout);
1815 }
1816
1820 namespace acwing1659 {
1821 int main(istream &cin, ostream &cout);
1822 }
1823
1825 namespace acwing1714 {
1826 int main(istream &cin, ostream &cout);
1827 }
1828
1830 namespace acwing1695 {
1831 int main(istream &cin, ostream &cout);
1832 }
1833
1835 namespace acwing1683 {
1836 int main(istream &cin, ostream &cout);
1837 }
1838
1842 namespace acwing4318 {
1843 int main(istream &cin, ostream &cout);
1844 }
1845
1849 namespace acwing4319 {
1850 int main(istream &cin, ostream &cout);
1851 }
1852
1854 namespace acwing1470 {
1855 struct status {
1856 int len;
1857 pair<int, int> current;
1858 pair<int, int> target;
1859 bool operator<(const status &s) const;
1860 [[nodiscard]] int get_weight() const;
1861
1862 status(int len, pair<int, int> current, pair<int, int> target)
1863 : len(len), current(std::move(current)), target(std::move(target)) {}
1864 };
1865
1866 int main(istream &cin, ostream &cout);
1867 }// namespace acwing1470
1868
1870 namespace acwing1761 {
1871 int main(istream &cin, ostream &cout);
1872 }
1873
1875 namespace acwing1749 {
1876 int main(istream &cin, ostream &cout);
1877 }
1878
1880 namespace acwing1737 {
1881 int main(istream &cin, ostream &cout);
1882 }
1883
1885 namespace acwing1725 {
1886 int main(istream &cin, ostream &cout);
1887 }
1888
1892 namespace acwing4394 {
1893 int main(istream &cin, ostream &cout);
1894 }
1895
1897 namespace acwing1812 {
1898 int main(istream &cin, ostream &cout);
1899 }
1900
1902 namespace acwing1800 {
1903 int main(istream &cin, ostream &cout);
1904 }// namespace acwing1800
1905
1907 namespace acwing1788 {
1908 int main(istream &cin, ostream &cout);
1909 }
1910
1912 namespace acwing1775 {
1913 int main(istream &cin, ostream &cout);
1914 }
1915
1917 namespace acwing785 {
1918 void qs(vector<int> &vec, int l, int r);
1919 int main(istream &cin, ostream &cout);
1920 }// namespace acwing785
1921
1923 namespace acwing788 {
1924 void ms(vector<int> &vec, int l, int r);
1925 int main(istream &cin, ostream &cout);
1926 }// namespace acwing788
1927
1929 namespace acwing789 {
1930 unsigned bfl(const vector<unsigned> &vec, unsigned target);
1931 unsigned bfr(const vector<unsigned> &vec, unsigned target);
1932 int main(istream &cin, ostream &cout);
1933 }// namespace acwing789
1934
1936 namespace acwing1866 {
1937 int main(istream &cin, ostream &cout);
1938 }
1939
1943 namespace acwing1854 {
1944 int main(istream &cin, ostream &cout);
1945 }
1946
1950 namespace acwing4397 {
1951 bool cmp(const pair<int, int> &a, const pair<int, int> &b);
1952 int main(istream &cin, ostream &cout);
1953 }// namespace acwing4397
1954
1958 namespace acwing4398 {
1960 struct TrieNode {
1961 char ch;
1962 unordered_map<char, TrieNode *> nexts = unordered_map<char, TrieNode *>();
1963 unordered_set<string *> origin = unordered_set<string *>();
1964
1965 explicit TrieNode(char ch): ch(ch) {}
1966
1967 void insert(const string &str, int start, string *origin);
1968 [[nodiscard]] TrieNode *search(const string &str, int start);
1969 ~TrieNode();
1970 };
1971
1972 int main(istream &cin, ostream &cout);
1973 }// namespace acwing4398
1974
1976 namespace acwing1842 {
1977 int main(istream &cin, ostream &cout);
1978 }
1979
1981 namespace acwing1824 {
1982 int main(istream &cin, ostream &cout);
1983 }
1984
1986 namespace acwing800 {
1987 int main(istream &cin, ostream &cout);
1988 }
1989
1991 namespace acwing2816 {
1992 int main(istream &cin, ostream &cout);
1993 }
1994
1996 namespace acwing1902 {
1997 int main(istream &cin, ostream &cout);
1998 }
1999
2001 namespace acwing3302 {
2002 int main(istream &cin, ostream &cout);
2003 }// namespace acwing3302
2004
2006 namespace acwing831 {
2007 vector<int> get_next(const string &str);
2008 int main(istream &cin, ostream &cout);
2009 }// namespace acwing831
2010
2012 namespace acwing1892 {
2013 int main(istream &cin, ostream &cout);
2014 }// namespace acwing1892
2015
2017 namespace acwing1883 {
2018 int main(istream &cin, ostream &cout);
2019 }
2020
2022 namespace acwing1995 {
2023 int main(istream &cin, ostream &cout);
2024 }
2025
2027 namespace acwing143 {
2028 struct TrieNode {
2029 TrieNode *next[2] = {nullptr, nullptr};
2030 int val{};
2031 void insert(const string &str, int i);
2032 };
2033
2034 int main(istream &cin, ostream &cout);
2035 }// namespace acwing143
2036
2038 namespace acwing837 {
2039 int main(istream &cin, ostream &cout);
2040 }
2041
2043 namespace acwing240 {
2044 struct UnionFind {
2045 explicit UnionFind(int n);
2046 vector<int> parent;
2047 vector<int> dist;
2048 int find(int x);
2049 };
2050
2051 int main(istream &cin, ostream &cout);
2052 }// namespace acwing240
2053
2055 namespace acwing845 {
2056 struct hash {
2057 unsigned int operator()(const array<array<char, 3>, 3> &g) const;
2058 };
2059
2060 int main(istream &cin, ostream &cout);
2061 }// namespace acwing845
2062
2064 namespace acwing849 {
2065 struct comp {
2066 bool operator()(const pair<int, int> &p1, const pair<int, int> &p2) const;
2067 };
2068
2069 int main(istream &cin, ostream &cout);
2070 }// namespace acwing849
2071
2073 namespace acwing853 {
2074 int main(istream &cin, ostream &cout);
2075 }
2076
2078 namespace acwing851 {
2079 int main(istream &cin, ostream &cout);
2080 }
2081
2083 namespace acwing852 {
2084 bool spfa(const vector<unordered_map<int, int>> &g, int m, int n);
2085 int main(istream &cin, ostream &cout);
2086 }// namespace acwing852
2087
2089 namespace acwing854 {
2090 int main(istream &cin, ostream &cout);
2091 }
2092
2094 namespace acwing858 {
2095 int main(istream &cin, ostream &cout);
2096 }
2097
2099 namespace acwing859 {
2100 struct edge {
2101 int u;
2102 int v;
2103 int w;
2104
2105 bool operator<(const edge &e) const;
2106 };
2107
2108 int main(istream &cin, ostream &cout);
2109 }// namespace acwing859
2110
2112 namespace acwing860 {
2113 bool dfs(vector<unordered_set<int>> &g, int node, vector<int> &color, int c);
2114 int main(istream &cin, ostream &cout);
2115 }// namespace acwing860
2116
2118 namespace acwing861 {
2119 bool find(vector<unordered_set<int>> &g, int x, vector<bool> &st,
2120 vector<int> &match);
2121 int main(istream &cin, ostream &cout);
2122 }// namespace acwing861
2123
2125 namespace acwing3373 {
2126 int main(istream &cin, ostream &cout);
2127 }// namespace acwing3373
2128}// namespace acwing
2129#endif// PROBLEMSCPP_ACWING_H
AcWing 2060. 奶牛选美
void flood(point first, bool occupy[55][55], unordered_set< point, pointhash, pointequal > *edge, char cowhide[55][55], int n, int m)
AcWing 2019. 拖拉机
int bfs(point start, int **field, int max_x, int max_y)
AcWing 4208. 电话号码
AcWing 1978. 奶牛过马路
AcWing 1929. 镜子田地
direction operator!(const direction &d)
取反方向
direction reflect(direction d, char mirror)
方向经过镜子反射后的变化
AcWing 1826. 农田缩减
AcWing 1660. 社交距离 II
AcWing 78. 左旋转字符串
AcWing 16. 替换空格
AcWing 87. 把字符串转换成整数
AcWing 4310. 树的DFS
AcWing 84. 求1+2+…+n
AcWing 35. 反转链表
AcWing 28. 在O(1)时间删除链表结点
AcWing 66. 两个链表的第一个公共结点
AcWing 36. 合并两个排序的链表
AcWing 29. 删除链表中重复的节点
AcWing 67. 数字在排序数组中出现的次数
AcWing 53. 最小的k个数
AcWing 68. 0到n-1中缺失的数字
AcWing 75. 和为S的两个数字
AcWing 32. 调整数组顺序使奇数位于偶数前面
AcWing 51. 数字排列
AcWing 17. 从尾到头打印链表
AcWing 26. 二进制中1的个数
AcWing 20. 用两个栈实现队列
AcWing 3358. 放养但没有完全放养
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
AcWing 3745. 牛的学术圈 I
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
AcWing 1442. 单词处理器
int main(istream &cin, ostream &cout)
AcWing 4314. 三元组
int main(istream &cin, ostream &cout)
AcWing 4315. 两个数列
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
水桶传递队列
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
阻挡广告牌 II
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
组队井字游戏
int main(istream &cin, ostream &cout)
最长连续子序列
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
不做最后一个!
int main(istream &cin, ostream &cout)
牛为什么过马路
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
void qs(vector< int > &vec, int l, int r)
逆序对的数量
int main(istream &cin, ostream &cout)
void ms(vector< int > &arr, int l, int r, int *ans)
long bfl(const vector< long > &vec, long target)
int main(istream &cin, ostream &cout)
long bfr(const vector< long > &vec, long target)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
bool cmp(const pair< int, int > &a, const pair< int, int > &b)
查询字符串
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
钻石收藏家
int main(istream &cin, ostream &cout)
数组元素的目标和
int main(istream &cin, ostream &cout)
判断子序列
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
表达式求值
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
vector< int > get_next(const string &str)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
见面与问候
int main(istream &cin, ostream &cout)
最大异或对
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
Dijkstra求最短路 I
int main(istream &cin, ostream &cout)
有边数限制的最短路
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
spfa判断负环
bool spfa(const vector< unordered_map< int, int > > &g, int, int n)
int main(istream &cin, ostream &cout)
Floyd求最短路
int main(istream &cin, ostream &cout)
Prim算法求最小生成树
int main(istream &cin, ostream &cout)
Kruskal算法求最小生成树
int main(istream &cin, ostream &cout)
染色法判定二分图
bool dfs(vector< unordered_set< int > > &g, int node, vector< int > &color, int c)
int main(istream &cin, ostream &cout)
int main(istream &cin, ostream &cout)
bool find(vector< unordered_set< int > > &g, int x, vector< bool > &st, vector< int > &match)
int main(istream &cin, ostream &cout)
AcWing 21. 斐波那契数列
ListNode * next
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
static int main(istream &, ostream &)
时间转换
static int main(istream &, ostream &)
简单乘积
static int main(istream &, ostream &)
AcWing 2041. 干草堆
static int main(istream &, ostream &)
static int main(istream &, ostream &)
size_t operator()(const point &) const
bool operator()(const point &, const point &) const
point(int x, int y, int step)
static int main(istream &, ostream &)
AcWing 611. 简单计算
static int main(istream &, ostream &)
AcWing 612. 球的体积
static int main(istream &, ostream &)
AcWing 2014. 岛
static int main(istream &, ostream &)
AcWing 607. 平均数2
static int main(istream &, ostream &)
AcWing 613. 面积
static int main(istream &, ostream &)
AcWing 610. 工资和奖金
static int main(istream &, ostream &)
AcWing 614. 最大值
static int main(istream &, ostream &)
AcWing 2005. 马蹄铁
static int main(istream &, ostream &)
static int dfs(bool stage, char horseshoes[5][5], const bool picked[5][5], int count, int level, int x, int y, int n)
AcWing 617. 距离
static int main(istream &, ostream &)
AcWing 618. 燃料消耗
static int main(istream &, ostream &)
AcWing 4206. 判断数字
static int main(istream &, ostream &)
AcWing 4207. 最长合法括号子序列
static int main(istream &, ostream &)
trie_node(int val, trie_node *father)
trie_node * father
父节点
void insert(string str)
反向插入
trie_node * nexts[10]
子节点
static int main(istream &, ostream &)
AcWing 1996. 打乱字母
static bool cmp(char x, char y)
static int main(istream &, ostream &)
AcWing 656. 钞票和硬币
static int main(istream &, ostream &)
AcWing 655. 天数转换
static int main(istream &, ostream &)
AcWing 665. 倍数
static int main(istream &, ostream &)
AcWing 657. 选择练习1
static int main(istream &, ostream &)
AcWing 1987. 粉刷栅栏
static int main(istream &, ostream &)
AcWing 660. 零食
static int main(istream &, ostream &)
AcWing 671. DDD
static int main(istream &, ostream &)
bool operator<(const path &p) const
static int main(istream &, ostream &)
AcWing 659. 区间
static int main(istream &, ostream &)
AcWing 662. 点的坐标
static int main(istream &, ostream &)
AcWing 1969. 品种邻近
static int main(istream &, ostream &)
AcWing 664. 三角形
static int main(istream &, ostream &)
AcWing 666. 三角形类型
static int main(istream &, ostream &)
AcWing 1960. 闪烁
bool * decompress(unsigned int status) const
unsigned int compress(const bool *) const
int main(istream &, ostream &)
unsigned int get_next(unsigned int status)
AcWing 667. 游戏时间
static int main(istream &, ostream &)
AcWing 668. 游戏时间2
static int main(istream &, ostream &)
AcWing 1952. 金发姑娘和 N 头牛
static int main(istream &, ostream &)
AcWing 669. 加薪
static int main(istream &cin, ostream &cout)
AcWing 672. 税
static int main(istream &cin, ostream &cout)
AcWing 1945. 奶牛棒球
static int main(istream &cin, ostream &cout)
AcWing 4209. 三元组
static int main(istream &cin, ostream &cout)
AcWing 4210. 数字
static int main(istream &cin, ostream &cout)
AcWing 4211. 序列重排
static int main(istream &cin, ostream &cout)
static unsigned int no2(unsigned long long a)
static unsigned int no3(unsigned long long a)
static bool cmp(unsigned long long a, unsigned long long b)
AcWing 670. 动物
static int main(istream &cin, ostream &cout)
AcWing 663. 简单排序
static int main(istream &cin, ostream &cout)
AcWing 1934. 贝茜放慢脚步
static int main(istream &cin, ostream &cout)
AcWing 658. 一元二次方程公式
static int main(istream &cin, ostream &cout)
AcWing 661. 平均数3
static int main(istream &cin, ostream &cout)
unsigned int x
横坐标
step(direction d, unsigned int x, unsigned int y)
unsigned int y
纵坐标
unsigned long operator()(const step &) const
bool operator()(const step &, const step &) const
unsigned int right_map[1000][1000]
在每格向右时可以被反射的次数
char mirrors[1000][1000]
镜子
unsigned int count_reflect(direction d, unsigned int x, unsigned int y)
获取反射的次数
unsigned short n
行数
int main(istream &cin, ostream &cout)
unsigned int down_map[1000][1000]
在每格向下时可以被反射的次数
unsigned int up_map[1000][1000]
在每格向上时可以被反射的次数
unsigned(* get_record(direction d))[1000]
获取记录类型
unsigned short m
列数
unsigned int left_map[1000][1000]
在每格向左时可以被反射的次数
AcWing 708. 偶数
static int main(istream &cin, ostream &cout)
AcWing 715. 余数
static int main(istream &cin, ostream &cout)
AcWing 1922. 懒惰的牛
static int main(istream &cin, ostream &cout)
AcWing 709. 奇数
static int main(istream &cin, ostream &cout)
AcWing 710. 六个奇数
static int main(istream &cin, ostream &cout)
AcWing 1913. 公平摄影
static int main(istream &cin, ostream &cout)
AcWing 712. 正数
static int main(istream &cin, ostream &cout)
AcWing 711. 乘法表
static int main(istream &cin, ostream &cout)
AcWing 1904. 奶牛慢跑
static int main(istream &cin, ostream &cout)
AcWing 714. 连续奇数的和 1
static int main(istream &cin, ostream &cout)
AcWing 718. 实验
static int main(istream &cin, ostream &cout)
AcWing 1884. COW
static int main(istream &cin, ostream &cout)
AcWing 4212. 字符串比较
static int main(istream &cin, ostream &cout)
AcWing 4213. 最小结果
static int main(istream &cin, ostream &cout)
static unsigned long long get_min(vector< char > ops, vector< unsigned long long > vec)
AcWing 4214. 三元组
static int main(istream &cin, ostream &cout)
AcWing 716. 最大数和它的位置
static int main(istream &cin, ostream &cout)
AcWing 713. 区间 2
static int main(istream &cin, ostream &cout)
AcWing 721. 递增序列
static int main(istream &cin, ostream &cout)
AcWing 719. 连续奇数的和 2
static int main(istream &cin, ostream &cout)
AcWing 1875. 贝茜的报复
static int main(istream &cin, ostream &cout)
AcWing 720. 连续整数相加
static int main(istream &cin, ostream &cout)
AcWing 717. 简单斐波那契
static int main(istream &cin, ostream &cout)
AcWing 1855. 愤怒的奶牛
static int main(istream &cin, ostream &cout)
AcWing 724. 约数
static int main(istream &cin, ostream &cout)
AcWing 722. 数字序列和它的和
static int main(istream &cin, ostream &cout)
AcWing 1843. 圆形牛棚
static int main(istream &cin, ostream &cout)
AcWing 723. PUM
static int main(istream &cin, ostream &cout)
AcWing 725. 完全数
static int main(istream &cin, ostream &cout)
bool operator()(const pair< unsigned int, unsigned int > &left, const pair< unsigned int, unsigned int > &right) const
bool operator()(const pair< unsigned int, unsigned int > &left, const pair< unsigned int, unsigned int > &right) const
static int main(istream &cin, ostream &cout)
AcWing 1813. 方块游戏
static int main(istream &cin, ostream &cout)
AcWing 726. 质数
static int main(istream &cin, ostream &cout)
AcWing 727. 菱形
static int main(istream &cin, ostream &cout)
AcWing 737. 数组替换
static int main(istream &cin, ostream &cout)
AcWing 740. 数组变换
static int main(istream &cin, ostream &cout)
AcWing 1801. 蹄子剪刀布
static int main(istream &cin, ostream &cout)
AcWing 4215. 处理字符串
static int main(istream &cin, ostream &cout)
AcWing 4216. 图中的环
static int main(istream &cin, ostream &cout)
AcWing 4217. 机器人移动
int main(istream &cin, ostream &cout)
vector< pair< int, int > > back
bool check(int len) const
vector< char > ops
vector< pair< int, int > > forth
AcWing 738. 数组填充
static int main(istream &cin, ostream &cout)
AcWing 741. 斐波那契数列
static int main(istream &cin, ostream &cout)
AcWing 1789. 牛为什么过马路 II
static int main(istream &cin, ostream &cout)
AcWing 739. 数组选择
static int main(istream &cin, ostream &cout)
AcWing 742. 最小数和它的位置
static int main(istream &cin, ostream &cout)
AcWing 1776. 牛的基因组学
static int main(istream &cin, ostream &cout)
AcWing 743. 数组中的行
static int main(istream &cin, ostream &cout)
AcWing 744. 数组中的列
static int main(istream &cin, ostream &cout)
AcWing 1762. 牛的洗牌
static int main(istream &cin, ostream &cout)
AcWing 1750. 救生员
static int main(istream &cin, ostream &cout)
AcWing 745. 数组的右上半部分
static int main(istream &cin, ostream &cout)
AcWing 748. 数组的右下半部分
static int main(istream &cin, ostream &cout)
AcWing 747. 数组的左上半部分
static int main(istream &cin, ostream &cout)
AcWing 746. 数组的左下半部分
static int main(istream &cin, ostream &cout)
AcWing 1738. 蹄球
static int main(istream &cin, ostream &cout)
AcWing 4296. 合适数对
static int main(istream &cin, ostream &cout)
AcWing 4297. 截断数组
static int main(istream &cin, ostream &cout)
AcWing 4298. 搭档
int main(istream &cin, ostream &cout)
bool ** connected
邻接矩阵存图
int m
女孩数量
int * match
记录当前女孩所对应的男孩
bool * found
记录女孩是否已经被找到
int n
男孩数量
int * a
男孩魅力值
int * b
女孩魅力值
AcWing 749. 数组的上方区域
static int main(istream &cin, ostream &cout)
AcWing 750. 数组的下方区域
static int main(istream &cin, ostream &cout)
AcWing 751. 数组的左方区域
static int main(istream &cin, ostream &cout)
AcWing 752. 数组的右方区域
static int main(istream &cin, ostream &cout)
AcWing 1726. 挤奶顺序
static int main(istream &cin, ostream &cout)
AcWing 753. 平方矩阵 I
static int main(istream &cin, ostream &cout)
AcWing 754. 平方矩阵 II
static int main(istream &cin, ostream &cout)
AcWing 1715. 桶列表
static int main(istream &cin, ostream &cout)
AcWing 755. 平方矩阵 III
static int main(istream &cin, ostream &cout)
AcWing 756. 蛇形矩阵
static int main(istream &cin, ostream &cout)
AcWing 1696. 困牛排序
static int main(istream &cin, ostream &cout)
AcWing 760. 字符串长度
static int main(istream &cin, ostream &cout)
AcWing 762. 字符串匹配
static int main(istream &cin, ostream &cout)
AcWing 1684. 大型植被恢复
static int main(istream &cin, ostream &cout)
AcWing 761. 字符串中的数字个数
static int main(istream &cin, ostream &cout)
AcWing 768. 忽略大小写比较字符串大小
static int main(istream &cin, ostream &cout)
AcWing 1471. 牛奶工厂
static int main(istream &cin, ostream &cout)
AcWing 763. 循环相克令
static int main(istream &cin, ostream &cout)
AcWing 766. 去掉多余的空格
static int main(istream &cin, ostream &cout)
AcWing 1460. 我在哪?
static int main(istream &cin, ostream &cout)
AcWing 4299. 删点
static int main(istream &cin, ostream &cout)
AcWing 4300. 两种操作
static int main(istream &cin, ostream &cout)
AcWing 4301. 截断数列
static int main(istream &cin, ostream &cout)
AcWing 765. 字符串加空格
static int main(istream &cin, ostream &cout)
AcWing 767. 信息加密
static int main(istream &cin, ostream &cout)
AcWing 769. 替换字符
static int main(istream &cin, ostream &cout)
AcWing 764. 输出字符串
static int main(istream &cin, ostream &cout)
AcWing 1443. 拍照
static int main(istream &cin, ostream &cout)
AcWing 773. 字符串插入
static int main(istream &cin, ostream &cout)
AcWing 770. 单词替换
static int main(istream &cin, ostream &cout)
AcWing 1672. 疯狂的科学家
static int main(istream &cin, ostream &cout)
AcWing 772. 只出现一次的字符
static int main(istream &cin, ostream &cout)
AcWing 771. 字符串中最长的连续出现的字符
static int main(istream &cin, ostream &cout)
bool operator<(const cow &) const
static int main(istream &cin, ostream &cout)
AcWing 774. 最长单词
static int main(istream &cin, ostream &cout)
AcWing 775. 倒排单词
static int main(istream &cin, ostream &cout)
AcWing 3347. 菊花链
static int main(istream &cin, ostream &cout)
AcWing 777. 字符串乘方
static int main(istream &cin, ostream &cout)
AcWing 776. 字符串移位包含问题
static int main(istream &cin, ostream &cout)
AcWing 4302. 元素分类
static int main(istream &cin, ostream &cout)
AcWing 4303. 链表
static int main(istream &cin, ostream &cout)
AcWing 4304. 字符串归类
static unsigned int str2int(const string &str)
static int main(istream &cin, ostream &cout)
AcWing 778. 字符串最大跨距
static int main(istream &cin, ostream &cout)
AcWing 779. 最长公共字符串后缀
static int main(istream &cin, ostream &cout)
AcWing 804. n的阶乘
static int main(istream &cin, ostream &cout)
static int fact(int n)
AcWing 810. 绝对值
static int abs(int n)
static int main(istream &cin, ostream &cout)
AcWing 805. x和y的最大值
static int main(istream &cin, ostream &cout)
static int max(int x, int y)
AcWing 806. 两个数的和
static double add(double x, double y)
static int main(istream &cin, ostream &cout)
AcWing 808. 最大公约数
static int gcd(int a, int b)
static int main(istream &cin, ostream &cout)
AcWing 807. 区间求和
static int main(istream &cin, ostream &cout)
static int sum(int l, int r)
AcWing 811. 交换数值
static int main(istream &cin, ostream &cout)
static void swap(int &x, int &y)
AcWing 809. 最小公倍数
static int main(istream &cin, ostream &cout)
static int lcm(int a, int b)
AcWing 812. 打印数字
static int main(istream &cin, ostream &cout)
static void print(int a[], int size, ostream &cout)
AcWing 814. 复制数组
static void copy(const int a[], int b[], int size)
static int main(istream &cin, ostream &cout)
AcWing 813. 打印矩阵
static int main(istream &cin, ostream &cout)
static void print2D(int a[][100], int row, int col, ostream &cout)
AcWing 815. 打印字符串
static int main(istream &cin, ostream &cout)
static void print(char str[], ostream &cout)
AcWing 4305. 斐波那契字符串
static int main(istream &cin, ostream &cout)
AcWing 4306. 序列处理
static int main(istream &cin, ostream &cout)
AcWing 4307. 数字重构
static int main(istream &cin, ostream &cout)
static string dfs(int i, bool free, unordered_map< int, int > um, string &b)
AcWing 819. 递归求阶乘
static int factorial(int n)
static int main(istream &cin, ostream &cout)
AcWing 816. 数组翻转
static void reverse(int a[], int size)
static int main(istream &cin, ostream &cout)
AcWing 820. 递归求斐波那契数列
static int main(istream &cin, ostream &cout)
static int fibb(int n)
AcWing 817. 数组去重
static int main(istream &cin, ostream &cout)
static int get_unique_count(int a[], int n)
返回数组前n个数中的不同数的个数
AcWing 818. 数组排序
static int main(istream &cin, ostream &cout)
static void sort(int a[], int l, int r)
AcWing 821. 跳台阶
static int main(istream &cin, ostream &cout)
AcWing 822. 走方格
static int main(istream &cin, ostream &cout)
AcWing 823. 排列
static int main(istream &cin, ostream &cout)
static void dfs(vector< int > &vec, set< int > &s, ostream &cout)
static string leftRotateString(string str, int n)
static string replaceSpaces(string &str)
static int strToInt(string str)
AcWing 4308. 组合字符串
static int main(istream &cin, ostream &cout)
AcWing 4309. 消灭老鼠
static int main(istream &cin, ostream &cout)
map< int, TreeNode * > nexts
unordered_map< int, int > position
int dfs(vector< int > *vec, TreeNode *node)
int main(istream &cin, ostream &cout)
unordered_map< int, TreeNode * > um
unordered_map< int, int > size_tree
static ListNode * reverseList(ListNode *head)
static void deleteNode(ListNode *node)
static ListNode * findFirstCommonNode(ListNode *headA, ListNode *headB)
static ListNode * merge(ListNode *l1, ListNode *l2)
static ListNode * deleteDuplication(ListNode *head)
static int getNumberOfK(vector< int > &nums, int k)
static vector< int > getLeastNumbers_Solution(vector< int > input, int k)
static int getMissingNumber(vector< int > &nums)
static vector< int > findNumbersWithSum(vector< int > &nums, int target)
static void reOrderArray(vector< int > &array)
static vector< vector< int > > permutation(vector< int > &nums)
static void dfs(const vector< int > &vec, vector< int > nums, set< vector< int > > &s)
static vector< int > printListReversingly(ListNode *head)
int pop()
Removes the element from in front of queue and returns that element
int peek()
Get the front element
bool empty() const
Returns whether the queue is empty
void push(int x)
Push element x to the back of queue
MyQueue()
Initialize your data structure here
AcWing 862. 三元组排序
static int main(istream &cin, ostream &cout)
AcWing 4311. 最小值
static int main(istream &cin, ostream &cout)
AcWing 4312. 出现次数
static int main(istream &cin, ostream &cout)
AcWing 3346. 你知道你的ABC吗
static int main(istream &cin, ostream &cout)
vector< cow * > previous
cow(string name, int val, int zodiac)
status(int len, pair< int, int > current, pair< int, int > target)
bool operator<(const status &s) const
unordered_map< char, TrieNode * > nexts
TrieNode * search(const string &str, int start)
void insert(const string &str, int start, string *origin)
unordered_set< string * > origin
void insert(const string &str, int i)
unsigned int operator()(const array< array< char, 3 >, 3 > &g) const
bool operator()(const pair< int, int > &p1, const pair< int, int > &p2) const
bool operator<(const edge &e) const