| Lê Quang Lâm - TK33 | |
|
|
|
Tác giả | Thông điệp |
---|
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Nov 10, 2022 6:49 pm | |
| - Code:
-
#include <iostream> #include <algorithm> #include <vector>
// set.*
using namespace std;
void submain() { vector<int> b; int t, n = 0; while (cin >> t) { b.push_back(t); n = max(n, t); } long long *a = new long long[n + 1]; a[0] = 0; a[1] = 1; cout << n << endl; int i = 1, j = 0; while (i <= n) { i++;j++; a[i] = 2 * a[j] + 1; if (i >= n) break; i++; a[i] = 3 * a[j] + 1;
} sort(a + 1, a + n + 1); cout << a[n] << endl; for (int i = 1; i <= n; i++) cout << a[i] << " "; cout << endl; // for (size_t i = 0; i < b.size(); i++) // cout << a[b[i]] << endl; delete[] a; }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Tue Nov 15, 2022 5:07 pm | |
| - Code:
-
#include <iostream>
// permu.*
using namespace std;
int *arr;
void print_arr(int len) { for (int i = 0; i < len; i++) cout << arr[i] << " "; cout << endl; }
void permute(int d, int len) { if (d >= len - 1) { print_arr(len); return; } for (int i = len-1; i > d; --i) { permute(d + 1, len); if ((len-d)%2 == 0) swap(arr[d], arr[i]); else swap(arr[d], arr[len - 1]); } permute(d + 1, len); }
void submain() { int n; cin >> n; arr = new int[n]; for (int i = 0; i < n; i++) arr[i] = i + 1; permute(0, n); delete[] arr; }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Tue Nov 15, 2022 6:00 pm | |
| - Code:
-
#include <iostream>
// bin.*
using namespace std;
unsigned int b[64]; unsigned int k; int n;
void print_result() { if (b[n - 1] == 0) return; int cnt = 0; unsigned long long v = 0; for (int i = n - 1; i >= 0; i--) { v *= 2; v += b[i]; if (b[i] == 1) cnt++; } if ((cnt * 2 == n) && (v % k == 0)) { for (int i = n - 1; i >= 0; i--) cout << b[i]; } }
void bincnt(int i) { for (unsigned int j = 0; j <= 1; j++) { b[i] = j; if (i == n - 1) print_result(); else bincnt(i + 1); } }
void submain() { cin >> n >> k; bincnt(0); }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Nov 17, 2022 5:03 pm | |
| - Code:
-
#include <iostream>
using namespace std;
int *a, *b, *c; int n, a1, res;
void print_result() { int t = a[0]; for (int i = 0; i < n - 1; i++) { if (b[i] == 1) t += a[i + 1]; else t -= a[i + 1]; } if (abs(t - a1) < abs(res - a1)) { res = t; for (int i = 0; i < n - 1; i++) c[i] = b[i]; } }
void bincnt(int i) { for (int j = 0; j <= 1; j++) { b[i] = j; if (i == n - 2) print_result(); else bincnt(i + 1); } }
void sub1() { b = new int[n - 1]; bincnt(0); delete[] b; }
void submain() { cin >> n >> a1; a = new int[n]; c = new int[n - 1]; for (int i = 0; i < n; i++) cin >> a[i]; res = INT_MAX; sub1(); cout << res << endl; cout << a[0]; for (int i = 0; i < n - 1; i++) { if (c[i] == 1) cout << "+"; else cout << "-"; cout << a[i + 1]; } delete[] a; delete[] c; }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Nov 17, 2022 5:54 pm | |
| - Code:
-
#include <iostream>
using namespace std;
int digits[8], idx[8]; int k, res, res1;
bool prime(int u) { if (u <= 1) return false; for (int i = 2; i * i <= u; i++) if (u % i == 0) return false; return true; }
void save_res(int u) { int s = 0; for (int i = 0; i < k; i++) s = s * 10 + digits[idx[i]]; int diff = s - u; if (diff < 0) diff *= -1; if (prime(diff / 9)) res1++; }
void permute(int d, int u) { if (d >= k - 1) save_res(u); else { for (int i = k-1; i > d; --i) { permute(d + 1, u); if ((k-d)%2 == 0) swap(idx[d], idx[i]); else swap(idx[d], idx[k - 1]); } permute(d + 1, u); } }
void prime_p(int u) { k = 0; int u1 = u; while (u1 > 0) { int d = u1 % 10; digits[k] = d; idx[k] = k; k++; u1 /= 10; } res1 = 0; permute(0, u); if (res1 > 0) res++; }
void submain() { int n, a, b; cin >> n; for (int i = 0; i < n; i++) { cin >> a >> b; res = 0; for (int j = a; j <= b; j++) prime_p(j); cout << res << endl; } }
int main() { freopen("prime_p.inp","r",stdin); freopen("prime_p.out","w",stdout); submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Nov 17, 2022 6:13 pm | |
| - Code:
-
#include <iostream>
// permu.*
using namespace std;
int *arr, *rarr; long long res;
void print_arr(int len) { long long s = 0, s1; for (int i = 0; i < len - 1; i++) { s1 = arr[i] + arr[i + 1]; s = max(s, s1); } if (res > s) { res = s; for (int i = 0; i < len; i++) rarr[i] = arr[i]; } }
void permute(int d, int len) { if (d >= len - 1) { print_arr(len); return; } for (int i = len-1; i > d; --i) { permute(d + 1, len); if ((len-d)%2 == 0) swap(arr[d], arr[i]); else swap(arr[d], arr[len - 1]); } permute(d + 1, len); }
void submain() { int n; cin >> n; arr = new int[n]; rarr = new int[n]; for (int i = 0; i < n; i++) cin >> arr[i]; res = LONG_MAX; permute(0, n); cout << res << endl; for (int i = 0; i < n; i++) cout << rarr[i] << " "; delete[] arr; delete[] rarr; }
int main() { freopen("sumtwo.inp","r",stdin); freopen("sumtwo.out","w",stdout); submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Nov 17, 2022 6:51 pm | |
| - Code:
-
#include <iostream> #include <vector>
using namespace std;
bool pinary(long long u) { if (u < 1) return false; vector<int> b; while (u > 0) { b.push_back((int)(u % 2)); u /= 2; } size_t k = b.size(); for (size_t i = 0; i < k - 1; i++) if ((b[i] == 1) && (b[i + 1] == 1)) return false; return true; }
void submain() { int u; vector<int> b; while (cin >> u) { int i = 1; long long r = 1; while (i < u) { r++; if (pinary(r)) i++; } int r1 = r;
while (r1 > 0) { b.push_back((int)(r1 % 2)); r1 /= 2; } size_t k = b.size(); for (size_t i = 0; i < k; i++) cout << b[k - 1 - i]; cout << endl; b.clear(); } }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Sat Nov 26, 2022 9:05 pm | |
| - Code:
-
#include <iostream>
using namespace std;
int dsum(int n) { int s = 0; while (n > 0) { s += n % 10; n /= 10; } return s; }
int xuli(int n) { for (int i = 1; i <= n; i++) { if (i + dsum(i) == n) return i; } return 0; }
void submain() { int nt; cin >> nt; for (int i = 0; i < nt; i++) { int n; cin >> n; cout << xuli(n) << endl; } }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Sat Nov 26, 2022 9:46 pm | |
| - Code:
-
#include <iostream> #include <string>
using namespace std;
string sub1(int n) { string s = ""; for (int i = 1; i <= n; i++) { s += to_string(i); } bool odd = false; while (s.size() > 1) { string s1 = ""; size_t start = odd ? 1 : 0; for (size_t i = start; i < s.size(); i += 2) s1 += s[i]; s = s1; odd = !odd; } return s; }
void submain() { int n; cin >> n; cout << sub1(n); }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Tue Dec 06, 2022 5:21 pm | |
| - Code:
-
#include <bits/stdc++.h>
using namespace std;
int divcnt(long long u) { int cnt = 0; for (long long i = 1; i * i <= u; i++) { if (u % i == 0) { cnt++; if (i != u / i) cnt++; } } return cnt; }
int main() { int d; while(cin >> d) { long long n = 1; while (divcnt(n) != d && n <= trunc(1e15)) n++; if (n > trunc(1e15)) cout << "NO"; else cout << n; cout << endl; } return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Dec 08, 2022 6:10 pm | |
| - Code:
-
#include <iostream> #include <string> #include <vector>
using namespace std;
int dsum(int n) { int s = 0; while (n > 0) { s += n % 10; n /= 10; } return s; }
void sub1() { string s; getline(cin, s); vector<unsigned int> vs; unsigned int k, mk = 0; while (cin >> k) { vs.push_back(k); mk = max(mk, k); } while (mk > s.size()) { int t = stoi(s.substr(s.size() - 3, 3)); s += to_string(dsum(t)); } for (unsigned int i = 0; i < vs.size(); i++) cout << s[vs[i] - 1] << endl; }
int main() { sub1(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Dec 08, 2022 6:35 pm | |
| - Code:
-
#include <iostream>
using namespace std; int a[2000][2000];
void sub1(int n) { for (int i = 0; i <= n; i++) { a[i][0] = 1; a[i][i] = 1; } for (int i = 2; i <= n; i++) { for (int j = 1; j <= n; j++) { a[i][j] = (a[i - 1][j - 1] + a[i - 1][j]) % 2; } } int s = 0; for (int i = 0; i <= n; i++) s += a[n][i]; cout << s << endl; }
int main() { int n; while (cin >> n) sub1(n); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Tue Dec 13, 2022 5:11 pm | |
| - Code:
-
#include <bits/stdc++.h>
using namespace std;
typedef unsigned int uint;
int a[60]; uint n; string s; int res;
bool palin(string s) { int n = s.size(); string s1; s1 = ""; for (int i = 0; i < n; i++) { s1 = s[i] + s1; } return s1 == s; }
void save_res() { string t = ""; for (uint i = 0; i < n; i++) if (a[i] == 0) t += s[i]; if (t != "" && palin(t)) { res++; } }
void bincnt(uint d) { for (int val = 0; val <= 1; val++) { a[d] = val; if (d == n - 1) save_res(); else bincnt(d + 1); } }
int main() { int tcnt; cin >> tcnt; for (int i = 0; i < tcnt; i++) { cin >> s; n = s.size(); res = 0; bincnt(0); cout << res << endl; } return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Tue Dec 13, 2022 5:45 pm | |
| - Code:
-
#include <bits/stdc++.h>
using namespace std;
typedef unsigned int uint;
int arr[60]; uint n; string a, b, r; bool f;
bool palin(string s) { int n = s.size(); string s1; s1 = ""; for (int i = 0; i < n; i++) { s1 = s[i] + s1; } return s1 == s; }
void save_res() { string t = ""; for (uint i = 0; i < n; i++) if (arr[i] == 0) t += a[i]; if (t != "" && b.find(t) == string::npos) { if (!f) { r = t; f = true; } else if (f && t.size() < r.size()) r = t; } }
void bincnt(uint d) { for (int val = 0; val <= 1; val++) { arr[d] = val; if (d == n - 1) save_res(); else bincnt(d + 1); } }
int main() { cin >> a >> b; n = a.size(); f = false; bincnt(0); cout << r.size() << endl; cout << r; return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Tue Dec 13, 2022 5:58 pm | |
| - Code:
-
#include <iostream>
using namespace std; int a[2000][2000];
int gcd(int x, int y) { while (y > 0) { int r = x % y; x = y; y = r; } return x; }
void sub1(int n) { for (int i = 0; i <= n; i++) { a[i][0] = 1; a[i][i] = 1; } for (int i = 2; i <= n; i++) { for (int j = 1; j <= n; j++) { a[i][j] = (a[i - 1][j - 1] + a[i - 1][j]); } } int s = a[n][1]; for (int i = 1; i <= n - 1; i++) s = gcd(s, a[n][i]); cout << s << endl; }
int main() { int n; while (cin >> n) sub1(n); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Tue Dec 13, 2022 6:21 pm | |
| - Code:
-
#include <bits/stdc++.h>
// permu.*
using namespace std;
int *arr;
void print_arr(int n) { for (int i = 0; i < n; i++) cout << arr[i] << " "; cout << endl; }
void permute(int n) { int i, j; bool done = false; do { print_arr(n); i = n - 1; while (i > 0) { if (arr[i - 1] < arr[i]) break; i--; } if (i == 0) done = true; else { i--; for (j = n - 1; j > i; j--) if (arr[j] > arr[i]) break; swap(arr[i], arr[j]); reverse(arr+ i + 1, arr+n); i++; } } while(!done); }
void submain() { int n; cin >> n; arr = new int[n]; for (int i = 0; i < n; i++) arr[i] = i + 1; permute(n); delete[] arr; }
int main() { submain(); return 0; }
Được sửa bởi lequanglamyb2007 ngày Thu Dec 15, 2022 5:10 pm; sửa lần 1. | |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Dec 15, 2022 5:08 pm | |
| - Code:
-
#include <bits/stdc++.h>
// permu.*
using namespace std;
int *arr, *buf; int pnum;
void print_arr(int n) { // for (int i = 0; i < n; i++) // cout << arr[i] << " "; // cout << endl; pnum++; for (int i = 0; i < n; i++) if (arr[i] != buf[i]) return; cout << pnum << endl; }
void permute(int n) { int i, j; bool done = false; do { print_arr(n); i = n - 1; while (i > 0) { if (arr[i - 1] < arr[i]) break; i--; } if (i == 0) done = true; else { i--; for (j = n - 1; j > i; j--) if (arr[j] > arr[i]) break; swap(arr[i], arr[j]); reverse(arr+ i + 1, arr+n); i++; } } while(!done); }
void submain() { int n; cin >> n; arr = new int[n]; buf = new int[n]; for (int i = 0; i < n; i++) { arr[i] = i + 1; cin >> buf[i]; } pnum = 0; permute(n); delete[] arr; delete[] buf; }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Dec 15, 2022 5:20 pm | |
| - Code:
-
#include <bits/stdc++.h>
using namespace std;
int *arr;
void print_arr(int n) { for (int i = 0; i < n; i++) if (arr[i] == i + 1) return; for (int i = 0; i < n; i++) cout << arr[i] << " "; cout << endl; }
void permute(int n) { int i, j; bool done = false; do { print_arr(n); i = n - 1; while (i > 0) { if (arr[i - 1] < arr[i]) break; i--; } if (i == 0) done = true; else { i--; for (j = n - 1; j > i; j--) if (arr[j] > arr[i]) break; swap(arr[i], arr[j]); reverse(arr+ i + 1, arr+n); i++; } } while(!done); }
void submain() { int n; cin >> n; arr = new int[n]; for (int i = 0; i < n; i++) arr[i] = i + 1; permute(n); delete[] arr; }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Dec 15, 2022 5:34 pm | |
| - Code:
-
#include <bits/stdc++.h>
using namespace std;
int *arr; long long r; bool p;
void print_arr(int n) { // for (int i = 0; i < n; i++) // cout << arr[i] << " "; // cout << endl; long long t = 0; for (int i = 0; i < n - 2; i++) { long long t2 = arr[i] - arr[i + 1] + arr[i + 2]; t += t2 >= 0 ? t2 : -t2; } if (!p) { r = t; p = true; } else r = max(r, t); }
void permute(int n) { int i, j; bool done = false; do { print_arr(n); i = n - 1; while (i > 0) { if (arr[i - 1] < arr[i]) break; i--; } if (i == 0) done = true; else { i--; for (j = n - 1; j > i; j--) if (arr[j] > arr[i]) break; swap(arr[i], arr[j]); reverse(arr+ i + 1, arr+n); i++; } } while(!done); }
void submain() { int n; cin >> n; arr = new int[n]; for (int i = 0; i < n; i++) cin >> arr[i]; r = 0; p = false; permute(n); cout << r; delete[] arr; }
int main() { submain(); return 0; }
| |
|
| |
lequanglamyb2007
Tổng số bài gửi : 304 Join date : 25/07/2022
| Tiêu đề: Re: Lê Quang Lâm - TK33 Thu Dec 15, 2022 6:51 pm | |
| - Code:
-
#include <bits/stdc++.h>
using namespace std;
typedef unsigned int uint;
vector<uint> ind; string str; int r;
bool palin(string s) { int n = s.size(); string s1; s1 = ""; for (int i = 0; i < n; i++) { s1 = s[i] + s1; } return s1 == s; }
void print_arr(uint n) { string t2 = ""; for (uint i = 0; i < n; i++) t2 += str[ind[i]]; if (palin(t2)) { int t = stoi(t2, nullptr, 10); r = max(r, t); } }
void permute(uint n) { uint i, j; bool done = false; do { print_arr(n); i = n - 1; while (i > 0) { if (ind[i - 1] < ind[i]) break; i--; } if (i == 0) done = true; else { i--; for (j = n - 1; j > i; j--) if (ind[j] > ind[i]) break; swap(ind[i], ind[j]); reverse(ind.begin()+ i + 1, ind.end()); i++; } } while(!done); }
void submain() { int num; cin >> num; str = to_string(num); uint n = str.size(); ind.resize(n); for (uint i = 0; i < n; i++) ind[i] = i; permute(n); cout << r; }
int main() { submain(); return 0; }
| |
|
| |
Sponsored content
| Tiêu đề: Re: Lê Quang Lâm - TK33 | |
| |
|
| |
| Lê Quang Lâm - TK33 | |
|