K
Khách

Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.

24 tháng 11 2019

#include<bits/stdc++.h>

using namespace std;

int main(){

freopen("thoigian.inp", "r", stdin);

freopen("thoigian.out", "w", stdout);

short n, a[25]={}, inp, res=0;

cin>>n;

for(short i=1; i<=n; i++){

cin>>inp;

for(short j=inp; j<=24; j++) a[j]++;

}

for(short i=1; i<=n; i++){

cin>>inp;

for(short j=inp+1; j<=24; j++) a[j]--;

}

for(short i:a) res=max(res, i);

for(short i=1; i<=24; i++) if(a[i]==res) cout<<i<<' ';

}

*Theo như bộ test, lúc 9h và 10h đều có số thành viên có mặt nhiều nhất là 6 nên mình in cả hai theo đúng yêu cầu của đề nhé <3.

8 tháng 11 2019

Ở bộ test của bạn số thời gian là 6 có học sinh tham dự bằng 10. Nên ở bài làm của mình sẽ làm thời gian lớn nhất trong số thời gian trùng học sinh tham dự.

Program hotrotinhoc;

const fi='thoigian.inp';

fo='thoigian.out';

var i,n,max,j,max1: integer;

f: text;

c,a,b: array[1..10000] of integer;

procedure ip;

begin

assign(f,fi);

reset(f);

readln(f,n);

for i:=1 to n do

read(f,a[i]);

readln(f);

for i:=1 to n do

read(f,b[i]);

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

max:=0; max1:=0;

for i:=1 to n do

begin

for j:=a[i] to b[i] do

inc(c[j]);

end;

for i:=1 to 24 do

if c[i]>max then max:=c[i];

for i:=1 to 24 do

if c[i]=max then

begin

if i>max1 then max1:=i;

end;

write(f,max1);

close(f);

end;

begin

ip;

out;

end.

Bài 4: Một nhóm gồm n bạn học sinh của một lớp tham gia một câu lạc bộ tin học vào dịp nghỉ hè. Biết rằng khoảng thời gian mà bạn thứ i có mặt tại câu lạc bộ là [ai, bi] (ai<bi tương ứng là các thời điểm đến và rời khỏi câu lạc bộ). Cô giáo chủ nhiệm lớp muốn tới thăm các bạn trong nhóm này. Hãy giúp cô giáo chủ nhiệm xác định thời điểm đến câu lạc bộ sao cho tại thời điểm đó cô giáo có...
Đọc tiếp

Bài 4: Một nhóm gồm n bạn học sinh của một lớp tham gia một câu lạc bộ tin học vào dịp nghỉ hè. Biết rằng khoảng thời gian mà bạn thứ i có mặt tại câu lạc bộ là [ai, bi] (ai<bi tương ứng là các thời điểm đến và rời khỏi câu lạc bộ). Cô giáo chủ nhiệm lớp muốn tới thăm các bạn trong nhóm này. Hãy giúp cô giáo chủ nhiệm xác định thời điểm đến câu lạc bộ sao cho tại thời điểm đó cô giáo có thể gặp được nhiều bạn trong nhóm nhất.

Dữ liệu: Vào từ file văn bản MEETING.INP:

· Dòng đầu tiên ghi số nguyên dương n (n < 1000);

· Dòng thứ i trong số n dòng tiếp theo ghi 2 số nguyên không âm ai, bi , i = 1, 2, ..., n.

Kết quả: Ghi ra file văn bản MEETING.OUT:

· Dòng đầu tiên ghi số nguyên dương k là số lượng bạn đang có mặt ở câu lạc bộ tại thời điểm cô giáo đến;

· Trong k dòng tiếp theo ghi chỉ số của k bạn có mặt ở câu lạc bộ tại thời điểm cô giáo đến, mỗi dòng ghi một chỉ số của một bạn.

MEETING.INP MEETING.OUT MEETING.INP MEETING.OUT

6

1 2

2 3

2 5

5 7

6 7

9 11

3

1

2

3

5

1 2

3 5

7 9

11 15

17 21

1

1

0
QT
Quoc Tran Anh Le
Giáo viên
9 tháng 11 2023

Có thể tạo tệp “bangDiem.txt" bằng cách chỉnh sửa và bổ sung bảng trong Hình la ở Bài 2; từ Word hay Excel, thao tác Copy\Paste vào cửa sổ của Notepad hay cửa sổ soạn thảo của Python; ghi lưu thành tệp có định dạng text.

- Đọc từng dòng của tập đầu vào.

- Chuyển đổi mỗi mục của danh sách sang kiểu dữ liệu cần thiết và nối thêm vào danh sách tương ứng trong chương trình (tham khảo chương trình ở Hình 4).

Trong Python, nếu một dòng gồm nhiều mục khác kiểu dữ liệu, xen kẽ nhau, thì phải truy cập từng phần tử của danh sách và chuyển từ xâu kí tự thành kiểu dữ liệu đúng mô tả.

Các thao tác với tệp dữ liệu

Đầu vào là tệp thuần văn bản chữ và số (đuôi tên tệp “txt”) gồm nhiều dòng; mỗi dòng gồm nhiều từ, mỗi từ là một mục dữ liệu, phân cách bằng khoảng trống.

Các bước thực hiện như sau:

Bước 1. Mở tệp để đọc hay viết, sử dụng hàm open () như ví dụ ở Hình 5.

Bước 2. Đọc từ tệp, có thể dùng các phương thức read(), readline(), readlines() kết hợp với split():

read().split() : Đọc từng từ và nối liền toàn bộ các dòng thành một danh sách các từ. Sử dụng khi tệp ngắn và cần xử lí toàn bộ nội dung tệp.

readline().split() : Đọc một dòng, trả về danh sách các từ, thường dùng nhất. readlines() : Đọc toàn bộ tệp, trả về danh sách các dòng, mỗi dòng là một xâu kí tự, kết thúc bằng ‘\n (dấu xuống dòng).

Bước 3. Xuất ra tệp thuần văn bản: có thể dùng hàm print, sau khi đã chuyển đầu ra chuẩn từ màn hình sang tệp đã mở để viết vào như sau:

Bước 4. Đóng tệp, dùng phương thức close().

Lưu ý: Nếu giữa các từ được phân cách nhau bằng dấu phẩy thì ta có tệp kiểu “csv” (comma separated value) và cần dùng split(',') thay vì dạng mặc định split(). Cần chuyển thành kiểu danh sách (hay mảng) nên sẽ kết hợp xử lí bằng split(',').

Bài 2: Thời gian làm việc của máy tính. N máy tính có số hiệu 1..N thực hiện N chương trình. Thời gian thực hiện chương trình của máy tính có số hiệu i là từ thời điểm thời gian ai đến thời điểm thời gian bi (1<N<=1000, ai, bi nguyên dương, ai<bi<=2000). Hãy xác định nhiều nhất các khoảng thời gian thực hiện chương trình của các máy tính sao cho không có thời điểm thời gian nào trùng nhau. Mỗi khoảng thời gian...
Đọc tiếp

Bài 2: Thời gian làm việc của máy tính.

N máy tính có số hiệu 1..N thực hiện N chương trình. Thời gian thực hiện chương trình của máy tính có số hiệu i là từ thời điểm thời gian ai đến thời điểm thời gian bi (1<N<=1000, ai, bi nguyên dương, ai<bi<=2000). Hãy xác định nhiều nhất các khoảng thời gian thực hiện chương trình của các máy tính sao cho không có thời điểm thời gian nào trùng nhau. Mỗi khoảng thời gian tìm được là chỉ bao gồm các thời điểm thời gian thực hiện chương trình của 1 máy tính.

Dữ liệu vào là tệp văn bản THOIGIAN.INP có cấu trúc:

- Dòng đầu tiên ghi số N

- N dòng tiếp theo ghi thời điểm thời gian bắt đầu và thời điểm thời gian kết thúc việc thực hiện chương trình của 1 máy tính (ghi cách nhau ít nhất là 1 ký tự trống). Thông tin về khoảng thời gian thực hiện chương trình của các máy tính được ghi tuần tự theo thứ tự tăng dần số hiệu của các máy tính đó.

Dữ liệu ra là tệp văn bản THOIGIAN.OUT có cấu trúc:

- Dòng đầu tiên ghi số lượng các khoảng thời gian tìm được.

- Các dòng tiếp theo ghi số hiệu của các máy tính có các khoảng thời gian tìm được. Mỗi số hiệu ghi trên 1 dòng và số hiệu của máy tính nào có khoảng thời gian với các thời điểm thời gian bắt đầu, thời điểm thời gian kết thúc chương trình nhỏ hơn thì được ghi trước.

Ví dụ:

THOIGIAN.INP

THOIGIAN.OUT

8

2 3

4 5

10 12

13 15

1 9

2 5

6 8

7 15

5

1

2

7

3

4

0

uses crt;

const fi='doc.inp';

var f1:text;

n,i:integer;

a:array[1..255]of integer;

begin

clrscr;

assign(f1,fi); reset(f1);

readln(f1,n);

for i:=1 to n do 

 read(f1,a[i]);

min:=a[1];

for i:=1 to n do 

  if min>=a[i] then min:=a[i];

writeln(min);

close(f1);

readln;

end.

viết ctrinh n≤ 10000 nguyên dương. Viết ra số lượng số nguyên tố và 10 giá trị số nguyên tố lớn hơn cả Dữ liệu vào: file B5.INP.TXT. Có dòng đầu là số n. Từ dòng kế ghi lần lượt n số cách nhau dấu cách hoặc xuống dòng KQ ra: ghi file B5.OUT.TXT dòng đầu ghi số lượng số nguyên tố dòng kế ghi 10 giá trị số nguyên tố lớn hơn cả được cách nhau bằng dấu cách BÀI 2 Viết chương trình...
Đọc tiếp

viết ctrinh n≤ 10000 nguyên dương. Viết ra số lượng số nguyên tố và 10 giá trị số nguyên tố lớn hơn cả Dữ liệu vào: file B5.INP.TXT. Có dòng đầu là số n. Từ dòng kế ghi lần lượt n số cách nhau dấu cách hoặc xuống dòng KQ ra: ghi file B5.OUT.TXT dòng đầu ghi số lượng số nguyên tố dòng kế ghi 10 giá trị số nguyên tố lớn hơn cả được cách nhau bằng dấu cách BÀI 2 Viết chương trình đọc các dòng trong một file văn bản độ dài dòng (255 ký tự, số dòng ≤ 50000). Tính ra số từ trong file( từ nằm trọn trên dòng), và dòng có số từ nhiều nhất là bao nhiêu từ, có bao nhiêu dòng như vậy. Dữ liệu vào : file B6-INT.TXT gồm nhiều dòng văn bản. KQ ra: file B6-OUT.TXT dòng đầu ghi tổng số từ vủa file, dong 2 ghi số từ nhiều nhất của 1 dòngvà số dòng có số từ nhiều nhất

1

Bài 1: 

const fi='b5.inp.txt';

fo='b5.out.txt';

var f1,f2:text;

a:array[1..255]of integer;

i,n,kt,j,dem:integer;

begin

assign(f1,fi); reset(f1);

assign(f2,fo); rewrite(f2);

readln(f1,n);

for i:=1 to n do 

 read(f1,a[i]);

dem:=0;

max:=1;

for i:=1 to n do

  if a[i]>1 then 

begin

kt:=0;

for j:=2 to trunc(sqrt(a[i])) do 

  if a[i] mod j=0 then kt:=1;

if kt=0 then 

begin

inc(dem);

if max<a[i] then max:=a[i];

end;

end;

writeln(f2,dem);

if dem=0 then writeln(f2,'Khong co so nguyen to trong day')

else writeln(f2,max);

close(f1);

close(f2);

end.

const fi='tong.inp';

fo='tong.out';

var f1,f2:text;

a:array[1..100]of integer;

n,i,t:integer;

begin

assign(f1,fi); reset(f1);

assign(f2,fo); rewrite(f2);

readln(f1,n);

for i:=1 to n do 

  read(f1,a[i]);

t:=0;

for i:=1 to n do 

  t:=t+a[i];

writeln(f2,t);

close(f1);

close(f2);

end.

QT
Quoc Tran Anh Le
Giáo viên
23 tháng 8 2023

Các tiêu chí đánh giá tính hiệu quả của thuật toán hay chương trình giải một bài toán có thể khác nhau tùy vào mục đích và yêu cầu của dự án hoặc ứng dụng cụ thể. Dưới đây là một số thảo luận về các tiêu chí được đưa ra trong câu hỏi:

1. Tiêu chí thời gian chạy (runtime): Thời gian chạy của chương trình là một yếu tố quan trọng trong đánh giá tính hiệu quả của thuật toán hay chương trình. Nếu chương trình chạy nhanh, đáp ứng được yêu cầu về thời gian đối với ứng dụng cụ thể, thì đây là một tiêu chí quan trọng để đánh giá tính hiệu quả của chương trình.

2. Tiêu chí tiết kiệm bộ nhớ: Việc sử dụng bộ nhớ của chương trình cũng là một yếu tố quan trọng trong đánh giá tính hiệu quả của chương trình, đặc biệt là đối với các ứng dụng có yêu cầu về tài nguyên hạn chế. Nếu chương trình sử dụng ít bộ nhớ và đáp ứng được yêu cầu về tài nguyên, thì tiêu chí này cũng được coi là quan trọng.

3. Tiêu chí đơn giản, rõ ràng, dễ hiểu: Độ đơn giản, rõ ràng và dễ hiểu của chương trình cũng là một yếu tố quan trọng trong đánh giá tính hiệu quả của chương trình, đặc biệt là trong việc duy trì và phát triển sau này. Nếu chương trình được viết một cách đơn giản, rõ ràng và dễ hiểu, thì nó sẽ dễ dàng trong việc duy trì, nâng cấp, và áp dụng cho các tình huống khác nhau.