Workspace Người dùng nguyennk_8nshn

Từ

Giới thiệu

include <bits/stdc++.h>

using namespace std;

bool ktra(long long x) { if (x < 2) return false; for (long long i = 2; i * i <= x; i++) { if (x % i == 0) return false; } return true; } void taocacso(const string &num, set<long long> &kq) { int len = num.size(); for (int diem = 1; diem < (1 << len); diem++) { string ht = “”; for (int i = 0; i < len; i++) { if (diem & (1 << i)) { ht += num[i]; } } if (!ht.empty() && ht[0] != ‘0’) { kq.insert(stoll(ht)); } } }

int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); // freopen(“BAI1.INP”, “r”, stdin); // freopen(“BAI1.OUT”, “w”, stdout); string n; cin >> n;

set<long long> cacso;
taocacso(n, cacso);

long long sntmax = -1;
for (long long x : cacso) {
    if (ktra(x)) {
        sntmax = max(sntmax, x);
    }
}

cout << sntmax << endl;
return 0;

} ham tim cac so tao nen so

include <bits/stdc++.h>

using namespace std;

long long tongchinhphuong(long long n) {
return (n * (n + 1) % 2022 * (2 * n + 1) % 2022 / 6) % 2022; }

int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); long long n; cin >> cout << tongchinhphuong(n) << endl; return 0; } tong cac so chinh phuong

Bai 1: lấy số lượng số chia hết cho 6 từ 1 đến m trừ đi sl sô chia hết cho 6 từ 1 đến n

include <bits/stdc++.h>

using namespace std;

signed main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); long long t; cin >> t; while(t–) { long long n,m; cin >> n >> m; cout << m/6 - (n-1)/6 << “\n”; } } Bai 2: sliding window: cộng vào số và khi vượt giới hạn thì rút gọn left

include <bits/stdc++.h>

using namespace std;

signed main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); string s; long long k; cin >> s >> k; vector<long long> ls(26, 0); long long slkt = 0, kq = 0; long long l = 0; for (long long r = 0; r < (long long)s.size(); r++) { long long c = s[r] - ‘a’; if (ls[c] == 0) slkt++; ls[c]++; while (slkt > k) { long long cl = s[l] - ‘a’; ls[cl]–; if (ls[cl] == 0) slkt–; l++; } kq = max(kq, r - l + 1); } cout << kq; } Bài 3: Sáng ước + prefix sum

include <bits/stdc++.h>

using namespace std; long long demuoc[1000005]; void sanguoc() { for (long long i = 1; i <= 1000000; i++) { for (long long j = i; j <= 1000000; j += i) { demuoc[j]++; } } }

int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); sanguoc(); long long n; cin >> n; vector<long long> ls(n); for (long long i = 0; i < n; i++) cin >> ls[i]; vector<long long> prf(n); prf[0] = ls[0]; for (long long i = 1; i < n; i++) prf[i] = prf[i - 1] + ls[i]; long long dem = 0; for (long long i = 0; i < n; i++) { for (long long j = i; j < n; j++) { long long tong = prf[j] - (i > 0 ? prf[i - 1] : 0); if (tong % demuoc[ls[j]] == 0) dem++; } } cout << dem; } Bài 4: Hàm tính diện tích với đáy : với mỗi cột i, ta so sánh ls[i] với top của stack. Nếu ls[i] nhỏ hơn hoặc bằng cột trên top thì nghĩa là không thể mở rộng thêm sang phải nữa Lúc đó, ta tính diện tích hình chữ nhật với chiều cao là ls[top] và chiều rộng = (i - l - 1) với l là vtri của cột trước đó sau đó ta cập nhật diện tích lớn nhất còn ở hàm int main thì ta sẽ liên tục lưu chiều cao cột j tính đến hàng htai sau mỗi hàng sẽ gọi hàm tính diện tích lớn nhất để tính diện tích hình chữ nhật lớn nhất có đáy nằm ở hàng đấy

include <bits/stdc++.h>

using namespace std;

long long timdtlonnhat(vector<long long> &h) { long long n = h.size(); stack<long long> st; long long mxdt = 0; for (long long i = 0; i <= n; i++) { long long cc = (i == n ? 0 : h[i]); while (!st.empty() && h[st.top()] >= cc) { long long top = st.top(); st.pop(); long long left = (st.empty() ? -1 : st.top()); long long dt = 1LL * h[top] * (i - left - 1); mxdt = max(mxdt, dt); } st.push(i); } return mxdt; }

int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); long long m, n; cin >> m >> n; vector<long long> ls(n, 0); long long kq = 0; for (long long i = 0; i < m; i++) { for (long long j = 0; j < n; j++) { long long x; cin >> x; if (x == 1) ls[j] += 1; else ls[j] = 0; } kq = max(kq, timdtlonnhat(ls)); } cout << kq; }

vector<long long> uoc(1000006,0),uocnt(1000006,0),nt(1000006,1); void sanguoc() { for(long long i=1; i<=1000005; i++) { for(long long j=i; j<=1000005; j+=i) { uoc[j]++; } } } void sanguocnt() { for(long long i=1; i<=1000005; i++) { for(long long j=i; j<=1000005; j+=i) { if(nt[i]) { uocnt[j]++; } } } } void sang() { nt[0]=nt[1]=0; for(long long i=2; ii<=1000005; i++) { if(nt[i]) { for(long long j=ii; j<=1000005; j+=i) { nt[j]=0; } } } }

include <bits/stdc++.h>

using namespace std; long long a[1000][1000],b[1000][1000],c[1000],dem=0,n,d[1000005]; void taobang(){ b[1][1]=a[1][1]; for(long long i=2; i<=n; i++){ for(long long j=1; j<=i;j++){ b[i][j]=a[i][j]+max(b[i-1][j-1],b[i-1][j]); } } }

void truyhoi(){ long long maxb=b[n][1]; long long vt=1; for(long long i=2; i<=n; i++){ if(maxb<b[n][i]){ maxb=b[n][i]; vt=i; } } cout << maxb << endl; }

int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n; for(long long i=1; i<=n; i++){ for(long long j=1; j<=i;j++){ cin>>a[i][j]; } } taobang(); truyhoi(); }

long long tinh(string s, string t) { long long m=s.size(), n=t.size(),nmax=LLONG_MIN; s=” ” + s; t=” ” + t; vector<vector\<long long>> dp(m + 1, vector<long long>(n + 1, 0)); for(long long i=1; i<=m; i++) { for(long long j=1; j<=n; j++) { dp[i][j] = 0; if(s[i] == t[j]) dp[i][j]=dp[i-1][j-1] + 1; } } for(long long i=1; i<=m; i++) { for(long long j=1; j<=n; j++) { nmax=max(nmax,dp[i][j]); } } return nmax; }

dp tim xau con chung dai nhat lien tiep

include <bits/stdc++.h>

using namespace std; long long a,n; const long long m=1000000007; long long mu(long long a, long long b){ if (b==0) return 1; long long kq=mu(a,b/2) % m; if (b%2==1) return a((kqkq)%m)%m; else return (kq*kq)%m; }

int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> a >> n; cout << mu(a,n); } https://onlinegdb.com/p4_gH3rJX

cout << prf[(long long)floor(sqrtl(sqrtl((long double)(b))))] - prf[(long long)ceil(sqrtl(sqrtl((long double)(a))))-1] << “\n”;

Lịch sử xếp hạng