diff --git a/cpp/AMR15A.cpp b/cpp/AMR15A.cpp new file mode 100644 index 0000000..d36cf0f --- /dev/null +++ b/cpp/AMR15A.cpp @@ -0,0 +1,24 @@ +#include + +using namespace std; + +int main() { + int n, + a, + e = 0, + o = 0; + cin >> n; + while (n--) { + cin >> a; + if (a%2 == 0) + ++e; + else + ++o; + } + if (e > o) + cout << "READY FOR BATTLE"; + else + cout << "NOT READY"; + cout << endl; + return 0; +} \ No newline at end of file diff --git a/cpp/ANKTRAIN.cpp b/cpp/ANKTRAIN.cpp new file mode 100644 index 0000000..2548687 --- /dev/null +++ b/cpp/ANKTRAIN.cpp @@ -0,0 +1,43 @@ +#include + +using namespace std; + +int main() +{ + int t; + cin >> t; + while (t--) + { + int n; + cin >> n; + switch (n%8) + { + case 0: + cout << n - 1 << "SL"; + break; + case 1: + cout << n + 3 << "LB"; + break; + case 2: + cout << n + 3 << "MB"; + break; + case 3: + cout << n + 3 << "UB"; + break; + case 4: + cout << n - 3 << "LB"; + break; + case 5: + cout << n - 3 << "MB"; + break; + case 6: + cout << n - 3 << "UB"; + break; + case 7: + cout << n + 1 << "SU"; + break; + } + cout << endl; + } + return 0; +} diff --git a/cpp/CHEFDETE.cpp b/cpp/CHEFDETE.cpp new file mode 100644 index 0000000..ebc27ed --- /dev/null +++ b/cpp/CHEFDETE.cpp @@ -0,0 +1,29 @@ +#include + +using namespace std; + +void xu_ly(int n) +{ + bool mang[n + 1] = {0}, t, i; + for (i = 0; i < n; i++) + { + cin >> t; + mang[t] = 1; + } + for (i = 1; i <= n; i++) + { + if (!mang[i]) + { + cout << i << " "; + } + } + //cout << '\b'; +} + +int main() +{ + int n; + cin >> n; + xu_ly(n); + return 0; +} diff --git a/cpp/CHEFSTUD.cpp b/cpp/CHEFSTUD.cpp new file mode 100644 index 0000000..0fb761e --- /dev/null +++ b/cpp/CHEFSTUD.cpp @@ -0,0 +1,26 @@ +#include +#include + +using namespace std; + +int main() +{ + int t; + cin >> t; + while (t--) + { + string s; + cin >> s; + int count = 0; + int l = s.length(); + for (int i = 0; i < l; i++) + { + if (s[i] == '<' && s[i + 1] == '>') + { + count++; + } + } + cout << count << endl; + } + return 0; +} diff --git a/cpp/CHOPRT.cpp b/cpp/CHOPRT.cpp new file mode 100644 index 0000000..1b6ceb9 --- /dev/null +++ b/cpp/CHOPRT.cpp @@ -0,0 +1,21 @@ +#include + +using namespace std; + +int main() { + int t; + long long a, b; + cin >> t; + while (t--) + { + cin >> a >> b; + if (a < b) + cout << "<"; + else if (a > b) + cout << ">"; + else + cout << "="; + cout << endl; + } + return 0; +} \ No newline at end of file diff --git a/cpp/CHRL2.cpp b/cpp/CHRL2.cpp new file mode 100644 index 0000000..f42b6ec --- /dev/null +++ b/cpp/CHRL2.cpp @@ -0,0 +1,42 @@ +#include +#include + +using namespace std; + +int main() +{ + char ch; + int c, h, e, f; + c = h = e = f = 0; + do + { + ch = getchar(); + if (ch == 'C') + { + c++; + } + else + { + if (ch == 'H' && c > h) + { + h++; + } + else + { + if (ch == 'E' && h > e) + { + e++; + } + else + { + if (ch == 'F' && e > f) + { + f++; + } + } + } + } + } while (ch != '\n'); + cout << f << endl; + return 0; +} diff --git a/cpp/CIELRCPT.cpp b/cpp/CIELRCPT.cpp new file mode 100644 index 0000000..129609c --- /dev/null +++ b/cpp/CIELRCPT.cpp @@ -0,0 +1,23 @@ +#include + +using namespace std; + +int main() +{ + int t, i, p, a, b; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> p; + b = 0; + a = 2048; + while (a) + { + b = b + p/a; + p = p%a; + a = a/2; + } + cout << b << endl; + } + return 0; +} diff --git a/cpp/COMM3.cpp b/cpp/COMM3.cpp new file mode 100644 index 0000000..6eb0013 --- /dev/null +++ b/cpp/COMM3.cpp @@ -0,0 +1,36 @@ +#include +#include + +using namespace std; + +typedef struct +{ + double x; + double y; +} toa_do; + +int main() +{ + int t; + double khoang_cach; + toa_do chef, head_server, sous_chef; + cin >> t; + while (t--) + { + cin >> khoang_cach; + cin >> chef.x >> chef.y; + cin >> head_server.x >> head_server.y; + cin >> sous_chef.x >> sous_chef.y; + if (sqrt(pow(sous_chef.x - chef.x, 2) + pow(sous_chef.y - chef.y, 2)) <= khoang_cach || + (sqrt(pow(sous_chef.x - head_server.x, 2) + pow(sous_chef.y - head_server.y, 2)) <= khoang_cach && + sqrt(pow(head_server.x - chef.x, 2) + pow(head_server.y - chef.y, 2)) <= khoang_cach)) + { + cout << "yes" << endl; + } + else + { + cout << "no" << endl; + } + } + return 0; +} diff --git a/cpp/COOMILK.cpp b/cpp/COOMILK.cpp new file mode 100644 index 0000000..6e61610 --- /dev/null +++ b/cpp/COOMILK.cpp @@ -0,0 +1,42 @@ +#include + +using namespace std; + +bool kiem_tra(int n) +{ + string s[50]; + int i; + bool b = 1; + for (i = 0; i < n; i++) + { + cin >> s[i]; + } + for (i = 0; i < n; i++) + { + if (s[i] == "cookie" && (i == (n - 1) || s[i + 1] == "cookie")) + { + b = 0; + break; + } + } + return b; +} + +int main() +{ + int t, n; + cin >> t; + while (t--) + { + cin >> n; + if (kiem_tra(n)) + { + cout << "YES" << endl; + } + else + { + cout << "NO" << endl; + } + } + return 0; +} diff --git a/cpp/DWNLD.cpp b/cpp/DWNLD.cpp new file mode 100644 index 0000000..37255a5 --- /dev/null +++ b/cpp/DWNLD.cpp @@ -0,0 +1,46 @@ +#include + +using namespace std; + +typedef struct +{ + int t; + int d; +} internet; + +int main() +{ + int tc, i, sum, n, k; + internet inter[10]; + cin >> tc; + while (tc--) + { + sum = 0; + cin >> n >> k; + for (i = 0; i < n; i++) + { + cin >> inter[i].t >> inter[i].d; + } + i = 0; + while (k > 0 || i == n) + { + if (k > inter[i].t) + { + k -= inter[i].t; + inter[i].t = 0; + } + else + { + inter[i].t -= k; + k = 0; + } + i++; + } + for (i = 0; i < n; i++) + { + sum += inter[i].t*inter[i].d; + } + cout << sum << endl; + } + return 0; +} diff --git a/cpp/FCTRL2.cpp b/cpp/FCTRL2.cpp new file mode 100644 index 0000000..a32ce05 --- /dev/null +++ b/cpp/FCTRL2.cpp @@ -0,0 +1,56 @@ +#include + +#define MAX 1000 + +using namespace std; + +void factorial(int n) +{ + int *a = new int[MAX]; + int size = 0; + int t = n; + while (t != 0) + { + a[size] = t%10; + t /= 10; + size++; + } + for (int x = 2; x < n; x++) + { + for (int i = 0; i < size; i++) + { + a[i] *= x; + } + for (int i = 0; i < size - 1; i++) + { + a[i + 1] += a[i]/10; + a[i] %= 10; + } + while (a[size - 1] >= 10) + { + a[size] = a[size - 1]/10; + a[size - 1] %= 10; + size++; + } + } + for (int i = size - 1; i >= 0; i--) + { + cout << a[i]; + } + cout << endl; + delete[] a; + a = NULL; +} + +int main() +{ + int t; + cin >> t; + while (t--) + { + int n; + cin >> n; + factorial(n); + } + return 0; +} diff --git a/cpp/FLOW002.cpp b/cpp/FLOW002.cpp new file mode 100644 index 0000000..04a3734 --- /dev/null +++ b/cpp/FLOW002.cpp @@ -0,0 +1,15 @@ +#include + +using namespace std; + +int main() +{ + int t, a, b, i; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> a >> b; + cout << a%b << endl; + } + return 0; +} diff --git a/cpp/FLOW004.cpp b/cpp/FLOW004.cpp new file mode 100644 index 0000000..fa24179 --- /dev/null +++ b/cpp/FLOW004.cpp @@ -0,0 +1,21 @@ +#include + +using namespace std; + +int main() +{ + int t, n, i, fdigit, ldigit; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> n; + ldigit = n%10; + while (n) + { + fdigit = n%10; + n = n/10; + } + cout << fdigit + ldigit << endl; + } + return 0; +} diff --git a/cpp/FLOW005.cpp b/cpp/FLOW005.cpp new file mode 100644 index 0000000..c1fba53 --- /dev/null +++ b/cpp/FLOW005.cpp @@ -0,0 +1,21 @@ +#include + +using namespace std; + +int main() +{ + int t, n, i, j, sum, a[6] = {1, 2, 5, 10, 50, 100}; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> n; + sum = 0; + for (j = 5; j >= 0; j--) + { + sum += n/a[j]; + n = n%a[j]; + } + cout << sum << endl; + } + return 0; +} diff --git a/cpp/FLOW006.cpp b/cpp/FLOW006.cpp new file mode 100644 index 0000000..36a19fc --- /dev/null +++ b/cpp/FLOW006.cpp @@ -0,0 +1,21 @@ +#include + +using namespace std; + +int main() +{ + int t, n, i, sum; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> n; + sum = 0; + while (n) + { + sum = sum + n%10; + n = n/10; + } + cout << sum << endl; + } + return 0; +} diff --git a/cpp/FLOW007.cpp b/cpp/FLOW007.cpp new file mode 100644 index 0000000..66d8f39 --- /dev/null +++ b/cpp/FLOW007.cpp @@ -0,0 +1,21 @@ +#include + +using namespace std; + +int main() +{ + int t, n, i, s; + cin >> t; + for (i = 0; i < t; i++) + { + s = 0; + cin >> n; + while (n) + { + s = s*10 + n%10; + n = n/10; + } + cout << s << endl; + } + return 0; +} diff --git a/cpp/FLOW009.cpp b/cpp/FLOW009.cpp new file mode 100644 index 0000000..b4ffcb0 --- /dev/null +++ b/cpp/FLOW009.cpp @@ -0,0 +1,22 @@ +#include +#include + +using namespace std; + +int main() +{ + int t, i; + double q, p, sum; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> q >> p; + sum = q*p; + if (q > 1000) + { + sum = sum*9/10; + } + cout << fixed << sum << endl; + } + return 0; +} diff --git a/cpp/FLOW010.cpp b/cpp/FLOW010.cpp new file mode 100644 index 0000000..681a713 --- /dev/null +++ b/cpp/FLOW010.cpp @@ -0,0 +1,34 @@ +#include + +using namespace std; + +int main() +{ + int t, i; + char c; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> c; + switch (c) + { + case 'b': + case 'B': + cout << "BattleShip" << endl; + break; + case 'c': + case 'C': + cout << "Cruiser" << endl; + break; + case 'd': + case 'D': + cout << "Destroyer" << endl; + break; + case 'f': + case 'F': + cout << "Frigate" << endl; + break; + } + } + return 0; +} diff --git a/cpp/FLOW011.cpp b/cpp/FLOW011.cpp new file mode 100644 index 0000000..367be45 --- /dev/null +++ b/cpp/FLOW011.cpp @@ -0,0 +1,28 @@ +#include +#include + +using namespace std; + +int main() +{ + int t, i; + double tlcb, tl, hra, da; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> tlcb; + if (tlcb < 1500) + { + hra = 0.1*tlcb; + da = 0.9*tlcb; + } + else + { + hra = 500; + da = 0.98*tlcb; + } + tl = tlcb + hra + da; + cout << fixed << tl << endl; + } + return 0; +} diff --git a/cpp/FLOW013.cpp b/cpp/FLOW013.cpp new file mode 100644 index 0000000..e232a34 --- /dev/null +++ b/cpp/FLOW013.cpp @@ -0,0 +1,22 @@ +#include + +using namespace std; + +int main() +{ + int t, a, b, c, i; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> a >> b >> c; + if (a + b + c == 180 && a > 0 && b > 0 && c > 0) + { + cout << "YES" << endl; + } + else + { + cout << "NO" << endl; + } + } + return 0; +} diff --git a/cpp/FLOW014.cpp b/cpp/FLOW014.cpp new file mode 100644 index 0000000..35bf288 --- /dev/null +++ b/cpp/FLOW014.cpp @@ -0,0 +1,77 @@ +#include + +using namespace std; + +int main() +{ + int t, g; + float h, cc, ts; + bool i, ii, iii; + cin >> t; + while (t--) + { + cin >> h >> cc >> ts; + if (h > 50) + { + i = 1; + } + else + { + i = 0; + } + if (cc < 0.7) + { + ii = 1; + } + else + { + ii = 0; + } + if (ts > 5600) + { + iii = 1; + } + else + { + iii = 0; + } + if (i && ii && iii) + { + g = 10; + } + else + { + if (i && ii) + { + g = 9; + } + else + { + if (ii && iii) + { + g = 8; + } + else + { + if (i && iii) + { + g = 7; + } + else + { + if (i || ii || iii) + { + g = 6; + } + else + { + g = 5; + } + } + } + } + } + cout << g << endl; + } + return 0; +} diff --git a/cpp/FLOW015.cpp b/cpp/FLOW015.cpp new file mode 100644 index 0000000..5e7ee78 --- /dev/null +++ b/cpp/FLOW015.cpp @@ -0,0 +1,76 @@ +#include + +using namespace std; + +enum days +{ + SUNDAY, + MONDAY, + TUESDAY, + WEDNESDAY, + THURSDAY, + FRIDAY, + SATURDAY +}; + +char* day[7] = +{ + "sunday", + "monday", + "tuesday", + "wednesday", + "thursday", + "friday", + "saturday", +}; + +int main() +{ + int t, nam, index; + cin >> t; + for (index = 0; index < t; index++) + { + cin >> nam; + int gt_nam, gt_thang, gia_tri, tong_gia_tri; + bool kt_nam_nhuan; + gt_nam = nam/100; + if ((nam%4 == 0 && nam%100 != 0) || (nam%400 ==0)) + { + kt_nam_nhuan = 1; + } + else + { + kt_nam_nhuan = 0; + } + gt_nam = gt_nam%4; + switch (gt_nam) + { + case 3: + gt_nam = 0; + break; + case 2: + gt_nam = 2; + break; + case 1: + gt_nam = 4; + break; + case 0: + gt_nam = 6; + break; + } + if (kt_nam_nhuan) + { + gt_thang = 6; + } + else + { + gt_thang = 0; + } + tong_gia_tri = nam%100; + gia_tri = tong_gia_tri/4; + tong_gia_tri = tong_gia_tri + gia_tri + gt_nam + gt_thang + 1; + tong_gia_tri = tong_gia_tri%7; + cout << day[tong_gia_tri] << endl; + } + return 0; +} diff --git a/cpp/FLOW016.cpp b/cpp/FLOW016.cpp new file mode 100644 index 0000000..c6c9c09 --- /dev/null +++ b/cpp/FLOW016.cpp @@ -0,0 +1,28 @@ +#include + +using namespace std; + +unsigned long long int gcd(int a, int b) { + unsigned long long int temp; + while (b != 0) + { + temp = a % b; + a = b; + b = temp; + } + return a; +} + +int main() +{ + unsigned long long int t, a, b, l, g; + cin >> t; + while (t--) + { + cin >> a >> b; + g = gcd(a, b); + l = a*b/g; + cout << g << " " << l << endl; + } + return 0; +} diff --git a/cpp/FLOW017.cpp b/cpp/FLOW017.cpp new file mode 100644 index 0000000..7ecd9d0 --- /dev/null +++ b/cpp/FLOW017.cpp @@ -0,0 +1,54 @@ +#include + +using namespace std; + +int max2(int a, int b, int c) +{ + if (a > b) + { + if (b > c) + { + return b; + } + else + { + if (c > a) + { + return a; + } + else + { + return c; + } + } + } + else + { + if (a > c) + { + return a; + } + else + { + if (b > c) + { + return c; + } + else + { + return b; + } + } + } +} +int main() +{ + int t, a, b, c; + cin >> t; + while (t--) + { + cin >> a >> b >> c; + cout << max2(a, b, c) << endl; + } + return 0; +} diff --git a/cpp/FLOW018.cpp b/cpp/FLOW018.cpp new file mode 100644 index 0000000..6b2aa86 --- /dev/null +++ b/cpp/FLOW018.cpp @@ -0,0 +1,26 @@ +#include + +using namespace std; + +unsigned long long int fact(int n) +{ + unsigned long long int x = 1; + int i; + for (i = 1; i <= n; i++) + { + x *= i; + } + return x; +} + +int main() +{ + int t, n; + cin >> t; + while (t--) + { + cin >> n; + cout << fact(n) << endl; + } + return 0; +} diff --git a/cpp/GDOG.cpp b/cpp/GDOG.cpp new file mode 100644 index 0000000..136aa84 --- /dev/null +++ b/cpp/GDOG.cpp @@ -0,0 +1,19 @@ +#include + +using namespace std; + +int main() +{ + int t; + long long n, k, m; + cin >> t; + while (t--) { + cin >> n >> k; + m = 0; + for (long long i = 1; i <= k; ++i) + if (n % i > m) + m = n % i; + cout << m << endl; + } + return 0; +} diff --git a/cpp/HS08TEST.cpp b/cpp/HS08TEST.cpp new file mode 100644 index 0000000..1c623f3 --- /dev/null +++ b/cpp/HS08TEST.cpp @@ -0,0 +1,19 @@ +#include + +using namespace std; + +int main() +{ + int x; + float y; + cin >> x >> y; + if (x%5 == 0 && (y - x) > 0.5) + { + cout << y - (x + 0.5) << endl; + } + else + { + cout << y << endl; + } + return 0; +} diff --git a/cpp/INTEST.cpp b/cpp/INTEST.cpp new file mode 100644 index 0000000..ef5ed2e --- /dev/null +++ b/cpp/INTEST.cpp @@ -0,0 +1,22 @@ +#include + +using namespace std; + +int main() +{ + ios_base::sync_with_stdio(false); + cin.tie(NULL); + unsigned long n, k, i, count = 0; + unsigned long long a; + cin >> n >> k; + for (i = 0; i < n; i++) + { + cin >> a; + if (a%k == 0) + { + count++; + } + } + cout << count << endl; + return 0; +} diff --git a/cpp/LUCKFOUR.cpp b/cpp/LUCKFOUR.cpp new file mode 100644 index 0000000..6ddc8f7 --- /dev/null +++ b/cpp/LUCKFOUR.cpp @@ -0,0 +1,23 @@ +#include + +using namespace std; + +int main() +{ + int t, i, n, sum; + cin >> t; + for (i = 0; i < t; i++) + { + cin >> n; + sum = 0; + while (n) + { + if (n%10 == 4) + { + sum++; + } + n = n/10; + } + cout << sum << endl; + } +} diff --git a/cpp/MUFFINS3.cpp b/cpp/MUFFINS3.cpp new file mode 100644 index 0000000..c8e8a50 --- /dev/null +++ b/cpp/MUFFINS3.cpp @@ -0,0 +1,15 @@ +#include + +using namespace std; + +int main() +{ + int n, t, i; + cin >> n; + for (i = 0; i < n; i++) + { + cin >> t; + cout << t/2 + 1 << endl; + } + return 0; +} diff --git a/cpp/ONP.cpp b/cpp/ONP.cpp new file mode 100644 index 0000000..a6884aa --- /dev/null +++ b/cpp/ONP.cpp @@ -0,0 +1,47 @@ +#include +#include +#include + +using namespace std; + +int main() +{ + int t, l1, l2 = 0, l3 = 0, i, j; + char s1[400], s2[400], s3[400]; + cin >> t; + while (t--) + { + cin >> s1; + l1 = strlen(s1); + for (i = 0; i < l1; i++) + { + if (isalpha(s1[i])) + { + s3[l3++] = s1[i]; + } + else + { + s2[l2++] = s1[i]; + if (s1[i] == ')') + { + for (j = l2 - 1; s2[j] != '('; j--) + { + if (s2[j] != ')') + { + s3[l3++] = s2[j]; + } + } + l2 = j; + } + } + } + for (i = 0; i < l3; i++) + { + cout << s3[i]; + } + cout << endl; + l2 = 0; + l3 = 0; + } + return 0; +} diff --git a/cpp/PALL01.cpp b/cpp/PALL01.cpp new file mode 100644 index 0000000..8cab6ca --- /dev/null +++ b/cpp/PALL01.cpp @@ -0,0 +1,44 @@ +#include + +using namespace std; + +bool check(int n) +{ + int a[5]; + int size = 0; + int t = n; + while (t != 0) + { + a[size] = t%10; + t /= 10; + size++; + } + for (int i = 0; i < size/2; i++) + { + if (a[i] != a[size - 1 - i]) + { + return false; + } + } + return true; +} + +int main() +{ + int t; + cin >> t; + while (t--) + { + int n; + cin >> n; + if (check(n)) + { + cout << "wins" << endl; + } + else + { + cout << "losses" << endl; + } + } + return 0; +} diff --git a/cpp/PERMUT2.cpp b/cpp/PERMUT2.cpp new file mode 100644 index 0000000..3615bae --- /dev/null +++ b/cpp/PERMUT2.cpp @@ -0,0 +1,41 @@ +#include + +using namespace std; + +bool check(int n) +{ + int a[n], i; + for (i = 0; i < n; i++) + { + cin >> a[i]; + } + for (i = 0; i < n; i++) + { + if (a[a[i] - 1] != i + 1) + { + return 0; + } + } + return 1; +} + +int main() +{ + int n; + do + { + cin >> n; + if (n) + { + if (check(n)) + { + cout << "ambiguous" << endl; + } + else + { + cout << "not ambiguous" << endl; + } + } + } while (n); + return 0; +} diff --git a/cpp/PRB01.cpp b/cpp/PRB01.cpp new file mode 100644 index 0000000..8ae0b11 --- /dev/null +++ b/cpp/PRB01.cpp @@ -0,0 +1,41 @@ +#include + +#define MAX_SIZE 100000 + +using namespace std; + +int main() +{ + bool prime[MAX_SIZE]; + prime[0] = prime[1] = 0; + for (int i = 2; i < MAX_SIZE; i++) + { + prime[i] = 1; + } + for (int i = 0; i < MAX_SIZE; i++) + { + if (prime[i]) + { + for (int j = 2*i; j < MAX_SIZE; j += i) + { + prime[j] = 0; + } + } + } + int t; + cin >> t; + while (t--) + { + int n; + cin >> n; + if (prime[n]) + { + cout << "yes" << endl; + } + else + { + cout << "no" << endl; + } + } + return 0; +} diff --git a/cpp/RECIPE.cpp b/cpp/RECIPE.cpp new file mode 100644 index 0000000..467cb71 --- /dev/null +++ b/cpp/RECIPE.cpp @@ -0,0 +1,57 @@ +#include + +using namespace std; + +void process(int n); +int gcd(int x, int y); + +void process(int n) +{ + int i, g, a[n]; + for (i = 0; i < n; i++) + { + cin >> a[i]; + } + g = gcd(a[0], a[1]); + for (i = 2; i < n; i++) + { + g = gcd(g, a[i]); + } + for (i = 0; i < n; i++) + { + a[i] /= g; + cout << a[i] << " "; + } + cout << endl; +} + +int gcd(int x, int y) +{ + if (y > x) + { + return gcd(y, x); + } + else + { + if (x%y == 0) + { + return y; + } + else + { + return gcd(y, x%y); + } + } +} + +int main() +{ + int t, n; + cin >> t; + while (t--) + { + cin >> n; + process(n); + } + return 0; +} diff --git a/cpp/REMISS.cpp b/cpp/REMISS.cpp new file mode 100644 index 0000000..cdc737d --- /dev/null +++ b/cpp/REMISS.cpp @@ -0,0 +1,15 @@ +#include + +using namespace std; + +int main() +{ + int t, a, b; + cin >> t; + while (t--) + { + cin >> a >> b; + cout << (a > b ? a : b) << " " << a + b << endl; + } + return 0; +} diff --git a/cpp/SMPAIR (new).cpp b/cpp/SMPAIR (new).cpp new file mode 100644 index 0000000..e989199 --- /dev/null +++ b/cpp/SMPAIR (new).cpp @@ -0,0 +1,26 @@ +#include +#include + +using namespace std; + +int main() +{ + long long t, n, min1, min2, temp; + cin >> t; + while (t--) { + cin >> n; + min1 = INT_MAX; + min2 = INT_MAX; + for (long long i = 0; i < n; ++i) { + cin >> temp; + if (temp < min1) { + min2 = min1; + min1 = temp; + } else if (temp < min2) { + min2 = temp; + } + } + cout << min1 + min2 << endl; + } + return 0; +} diff --git a/cpp/TLG.cpp b/cpp/TLG.cpp new file mode 100644 index 0000000..938c238 --- /dev/null +++ b/cpp/TLG.cpp @@ -0,0 +1,30 @@ +#include +#include + +using namespace std; + +int main() +{ + int n, i, l = 0, w = 0, a, b, c = 0, d = 0; + cin >> n; + for (i = 0; i < n; i++) + { + cin >> a >> b; + c = c + a; + d = d + b; + if (abs(c - d) > l) + { + l = abs(c - d); + if (c > d) + { + w = 1; + } + else + { + w = 2; + } + } + } + cout << w << " " << l << endl; + return 0; +} diff --git a/cpp/TRACE.cpp b/cpp/TRACE.cpp new file mode 100644 index 0000000..2d37bcf --- /dev/null +++ b/cpp/TRACE.cpp @@ -0,0 +1,85 @@ +#include + +using namespace std; + +int main() +{ + ios_base::sync_with_stdio(false); + cin.tie(NULL); + unsigned short t; + cin >> t; + while (t--) + { + unsigned short n; + cin >> n; + unsigned short **a = new unsigned short*[n]; + for (unsigned short i = 0; i < n; i++) + { + a[i] = new unsigned short[n]; + } + for (unsigned short i = 0; i < n; i++) + { + for (unsigned short j = 0; j < n; j++) + { + cin >> a[i][j]; + } + } + int max = 0; + for (unsigned short i = 0; i < n; i++) + { + max += a[i][i]; + } + for (unsigned short i = 0; i < n; i++) + { + int t = 0; + for (unsigned short j = 0; j < n - i; j++) + { + t += a[0 + j][i + j]; + } + if (t > max) + { + max = t; + } + } + for (unsigned short i = 0; i < n; i++) + { + int t = 0; + for (unsigned short j = 0; j < n - i; j++) + { + t += a[i + j][0 + j]; + } + if (t > max) + { + max = t; + } + } + /* + for (unsigned short i = 0; i < n; i++) + { + for (unsigned short j = 0; j < n; j++) + { + if (i != 0 && j != 0) + { + break; + } + for (unsigned short k = 1; k <= n - ((i > j)?i:j); k++) + { + int temp = 0; + for (unsigned short l = 0; l < k; l++) + { + temp += a[i + l][j + l]; + } + if (temp > max) + { + max = temp; + } + cout << temp << endl; + } + } + } + */ + cout << max << endl; + delete[] a; + } + return 0; +} diff --git a/cpp/TSORT.cpp b/cpp/TSORT.cpp new file mode 100644 index 0000000..0384e6f --- /dev/null +++ b/cpp/TSORT.cpp @@ -0,0 +1,72 @@ +#include + +using namespace std; + +void quickSort(unsigned int arr[], unsigned int left, unsigned int right) { + + int i = left, j = right; + + int tmp; + + int pivot = arr[(left + right) / 2]; + + + + /* partition */ + + while (i <= j) { + + while (arr[i] < pivot) + + i++; + + while (arr[j] > pivot) + + j--; + + if (i <= j) { + + tmp = arr[i]; + + arr[i] = arr[j]; + + arr[j] = tmp; + + i++; + + j--; + + } + + }; + + + + /* recursion */ + + if (left < j) + + quickSort(arr, left, j); + + if (i < right) + + quickSort(arr, i, right); + +} + +int main() +{ + unsigned int t, i; + cin >> t; + unsigned int a[t]; + for (i = 0; i < t; i++) + { + cin >> a[i]; + } + quickSort(a, 0, t); + for (i = 0; i < t; i++) + { + cout << a[i] << endl; + } + return 0; +} diff --git a/cpp/TTENIS.cpp b/cpp/TTENIS.cpp new file mode 100644 index 0000000..5a30564 --- /dev/null +++ b/cpp/TTENIS.cpp @@ -0,0 +1,34 @@ +#include +#include + +using namespace std; + +int main() +{ + char s[100]; + int t, i, l, dem_0, dem_1; + cin >> t; + while (t--) + { + cin >> s; + dem_0 = dem_1 = i = 0; + l = strlen(s); + for (i = 0; i < l; i++) + { + if (s[i] == '0') + { + dem_0++; + } + } + dem_1 = l - dem_0; + if (dem_1 > dem_0) + { + cout << "WIN" << endl; + } + else + { + cout << "LOSE" << endl; + } + } + return 0; +} diff --git a/cpp/WDTBAM.cpp b/cpp/WDTBAM.cpp new file mode 100644 index 0000000..e5db991 --- /dev/null +++ b/cpp/WDTBAM.cpp @@ -0,0 +1,36 @@ +#include + +using namespace std; + +int main() +{ + int t, n, c; + long long *a, m; + string c1, c2; + cin >> t; + while (t--) { + c = 0; + m = 0; + cin >> n; + cin >> c1 >> c2; + a = new long long[n + 1]; + for (int i = 0; i <= n; ++i) + cin >> a[i]; + for (int i = 0; i < n; ++i) { + if (c1[i] == c2[i]) + ++c; + } + if (c == n) { + cout << a[n] << endl; + } else { + for (int i = 0; i <= c; ++i) { + if (a[i] > m) + m = a[i]; + } + cout << m << endl; + } + + delete [] a; + } + return 0; +}