Hệ sinh thái số IELP
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Hệ sinh thái số IELP

Học lập trình với Hệ sinh thái số IELP
 
Trang ChínhTrang Chính  CalendarCalendar  Latest imagesLatest images  Trợ giúpTrợ giúp  Tìm kiếmTìm kiếm  Thành viênThành viên  NhómNhóm  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  
Tìm kiếm
 
 

Display results as :
 
Rechercher Advanced Search
Keywords
tổng nguyễn phương Phạm wavio Trần tích Hoàng được Thành giác nhật 2022 Phần điểm pháp sach Minh BANG thưởng đặng HOAI sinh Nhàn hình chứa
Latest topics
» Buổi học số 1. Cấu trúc tuần tự trong C++ (Bài 1 -> Bài 15)
KTLT2. Tần số EmptyThu Apr 25, 2024 10:49 am by quanle1120

» Chấm bài trực tuyến với Jusolan.ddns.net
KTLT2. Tần số EmptyWed Apr 24, 2024 9:15 pm by Admin

» Bài kiểm tra giữa Học kỳ II
KTLT2. Tần số EmptyWed Apr 05, 2023 8:00 am by Nguyễn Đức Mạnh

» Bài giữa kì 2
KTLT2. Tần số EmptyMon Apr 03, 2023 8:34 am by Khách viếng thăm

» Bài giữa kì tin Lê Đức Anh
KTLT2. Tần số EmptySun Apr 02, 2023 8:33 pm by Tendalda06

» Nghiêm Tuấn Tú
KTLT2. Tần số EmptySat Apr 01, 2023 9:03 am by Nghiêm Tuấn Tú

» Nguyễn Trần Ý Nhi
KTLT2. Tần số EmptySat Apr 01, 2023 8:23 am by Nguyễn Trần Ý Nhi

» Nguyễn Kim Anh
KTLT2. Tần số EmptySat Apr 01, 2023 12:05 am by Khách viếng thăm

» Trần Thanh Trà
KTLT2. Tần số EmptyFri Mar 31, 2023 11:10 pm by Trần Thanh Trà

May 2024
MonTueWedThuFriSatSun
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendarCalendar
Top posting users this week
No user

 

 KTLT2. Tần số

Go down 
3 posters
Tác giảThông điệp
Admin
Admin



Tổng số bài gửi : 152
Join date : 23/04/2022
Age : 41
Đến từ : THPT Chuyên Nguyễn Tất Thành - Yên Bái

KTLT2. Tần số Empty
Bài gửiTiêu đề: KTLT2. Tần số   KTLT2. Tần số EmptyTue May 10, 2022 3:22 pm

KTLT.2) Tần số
Nhiều hằng cơ bản là số vô tỷ và các chữ số trong hằng xuất hiện gần ngẫu nhiên. Để kiểm tra xem các chữ số trong một hằng có thể sử dụng như bộ số ngẫu nhiên hay không người ta lấy chuỗi N chữ số liên tiếp của nó và tính tần số xuất hiện của các chuỗi số S1, S2, . . ., SK (1 ≤ N ≤ 1 000 000, 1 ≤ K ≤ 1000). Chuỗi Si có độ dài không vượt quá 100.
Yêu cầu: Tính tần số xuất hiện các xâu Si, i = 1, 2, …, K.
Dữ liệu: Vào từ file văn bản FREQ.INP:
• Dòng đầu tiên chứa số nguyên  K – số lượng xâu
• Dòng thứ i trong K dòng tiếp theo chứa xâu ký tự số Si,
• Xâu S0.
Kết quả: Đưa ra file văn bản FREQ.OUT K số nguyên, mỗi số trên một dòng. Số nguyên thứ i xác định số lần xuất hiện Si trong xâu S0.
Ví dụ:
FREQ.INP
3
1828
90
1234
2718281828459045235360
FREG.OUT
2
1
0


Được sửa bởi Admin ngày Sat May 14, 2022 11:20 am; sửa lần 2.
Về Đầu Trang Go down
https://ielp.forumvi.com
LoliDaisuki




Tổng số bài gửi : 1
Join date : 03/05/2022

KTLT2. Tần số Empty
Bài gửiTiêu đề: Re: KTLT2. Tần số   KTLT2. Tần số EmptyTue May 10, 2022 8:37 pm

Code:

/*
    Loli failed to get a prize in VOI 2022, so Loli will try again in 2023,
    while struggling to solve a simple problem at 20:09 on 10.05.2022.
*/
#include <bits/stdc++.h>
using namespace std;

#pragma region Define
    #define ll long long
    // #define int long long
    #define pii pair<int, int>
    #define vi vector<int>
    #define pb push_back
    #define fr first
    #define sc second
    #define fi(x, a, b) for(int (x)=(int)a; (x)<=(int)b; ++(x))
    #define fd(x, a, b) for(int (x)=(int)a; (x)>=(int)b; --(x))
    #define bit(x, n) ((x)&(1<<(n)))
    const int oo=1e9+7;
    const ll lloo=1e18+7;
#pragma endregion

#define task "FREQ"
#define nmax 1000007
const int mod = (int)1e9 + 7;
const int base=101;
const ll mm = 1LL*mod*mod;

int n, m, k;
string s;
ll h[nmax], f[nmax];
int hashS[nmax];
set<int> len;
map<int, int> mp;

int getHash(int u, int v) {
    return (f[v] - f[u-1] * h[v-u+1] + mm) % mod;
}

void loli() {
    cin >> k;
    fi(i,1,k) {
        cin >> s;
        n = s.size();
        len.insert(n);
        fi(j,0,n-1) hashS[i] = ((hashS[i]*base) + s[j]) % mod;
    }
    cin >> s;
    m = s.size();
    s = " " + s;
    f[0] = 0;
    fi(i,1,m) f[i] = ((f[i-1]*base) + s[i]) % mod;
    h[0] = 1;
    fi(i,1,m) h[i] = (h[i-1]*base)%mod;
    for(int j: len) {
        fi(i,1,m-j+1) ++mp[getHash(i, i+j-1)];
    }
    fi(i,1,k) cout << mp[hashS[i]] << '\n';
}

signed main() {
    ios_base::sync_with_stdio(false); cin.tie(nullptr);
    int test = 1;
    freopen(task".INP","r",stdin);
    freopen(task".OUT","w",stdout);
    // cin >> test;
    while(test--) loli();
    return 0;
}

Admin and minhchanthinh like this post

Về Đầu Trang Go down
hdluong




Tổng số bài gửi : 19
Join date : 09/05/2022

KTLT2. Tần số Empty
Bài gửiTiêu đề: Re: KTLT2. Tần số   KTLT2. Tần số EmptyWed May 11, 2022 10:25 pm

Bài này code Pascal ạ
Code:

uses math,crt;
var s:array[-5..1007] of string;
        st:string;
        i,n,dem:longint;
procedure kt(u:string);
var str:string;
begin
        str:=st; dem:=0;
        while (pos(u,str)<>0) do
        begin
                inc(dem);
                delete(str,pos(u,str),length(u));
        end;
end;
begin
        assign(input,'freq.inp'); reset(input);
        assign(output,'freq.out'); rewrite(output);
        readln(n);
        for i:=1 to n do readln(s[i]);
        read(st);
        for i:=1 to n do
        begin
                kt(s[i]);
                writeln(dem);
        end;
        close(input);
        close(output);
end.

Admin likes this post

Về Đầu Trang Go down
Sponsored content





KTLT2. Tần số Empty
Bài gửiTiêu đề: Re: KTLT2. Tần số   KTLT2. Tần số Empty

Về Đầu Trang Go down
 
KTLT2. Tần số
Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Hệ sinh thái số IELP :: Thực nghiệm phần C++ :: 8-Kỹ thuật lập trình-
Chuyển đến