Giáo viên tổ chức một trò chơi có luật như sau: Chia lớp thành m đội, mỗi đội có...">
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.

D
datcoder
CTVVIP
6 tháng 2 2024

#include <bits/stdc++.h>

using namespace std;

int main(){

    int n;

    cin >> n;

    int a[n][n];

    for (int i=0; i<n;i++)

        for (int j=0;j<n;j++)

              a[i][j]=0;

    for (int i=0; i<n;i++){

        for (int j=0;j<n;j++)

              cout << a[i][j];

        cout <<endl;

     }

     return 0;

}

Bài 3: Đỉnh đồi – TOP.* (7 điểm) Đồn điền trà của gia đình Tý nằm trên địa hình có nhiều ngọn đồi, để bảo vệ đồn điền gia đình giao cho Tý tính toán số người cần thiết để canh gác trên các ngọn đồi này. Vấn đề là sẽ cần bao nhiêu người canh gác nếu như anh ta muốn đặt 1 người canh gác trên đỉnh của mỗi đồi. Tý có bản đồ của đồn điền là một ma trận gồm N...
Đọc tiếp

Bài 3: Đỉnh đồi – TOP.* (7 điểm)

Đồn điền trà của gia đình Tý nằm trên địa hình có nhiều ngọn đồi, để bảo vệ đồn điền gia đình giao cho Tý tính toán số người cần thiết để canh gác trên các ngọn đồi này.

Vấn đề là sẽ cần bao nhiêu người canh gác nếu như anh ta muốn đặt 1 người canh gác trên đỉnh của mỗi đồi. Tý có bản đồ của đồn điền là một ma trận gồm N hàng và M cột. Mỗi phần tử của ma trận có độ cao Hij so với mặt nước biển là 0 của ô (i,j). Hãy giúp Tý xác định số lượng đỉnh đồi trên bản đồ.

Đỉnh đồi là 1 hoặc nhiều ô nằm kề nhau của ma trận có cùng độ cao được bao quanh bởi cạnh của bản đồ hoặc bởi các ô có độ cao nhỏ hơn. Hai ô gọi là kề nhau nếu độ chênh lệch giữa tọa độ X không quá 1 và chênh lệch tọa độ Y không quá 1.

Dữ liệu vào: đọc từ tập tin văn bản TOP.INP có cấu trúc:

  • Dòng đầu chứa 2 số nguyên N, M cách nhau ít nhất một khoảng trắng (1 < N ≤ 100), (1 < M ≤ 70);
  • N dòng tiếp theo mỗi dòng là M số nguyên mô tả độ cao Hij theo thứ tự của ma trận (0

≤ Hij ≤ 10000).

Kết quả: Xuất ra tập tin văn bản TOP.OUT một số N duy nhất là số đỉnh đồi tìm được.

Ví dụ:

TOP.INP TOP.OUT
8 7 3
4 3 2 2 1 0 1
3 3 3 2 1 0 1
2 2 2 2 1 0 0
2 1 1 1 1 0 0
1 1 0 0 0 1 0
0 0 0 1 1 1 0
0 1 2 2 1 1 0
0 1 1 1 2 1 0
0
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...
Đọ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
6 tháng 4 2017

uses crt;
const finp='Bai1.inp';
fout='Bai1.out';
type mangc=array[1..10000] of char;
mangl=array[1..10000] of longint;
var f:text;
ch:mangc; a:mangl;
n:longint;
procedure doc;
var i:longint;
begin
assign(f,finp);
reset(f);
readln(f,n);
for i:=1 to n do read(f,ch[i]);
close(f);
end;
procedure ghi;
begin
assign(f,fout);
rewrite(f);
end;
procedure tim;
var i,j,d,k,l:longint;
begin
for i:=n-2 downto 1 do
begin
a[i]:=1;
d:=0;
for j:=i+1 to n do
begin
l:=a[j];
if ch[i]=ch[j] then a[j]:=d+2
else if a[j-1]>a[j] then a[j]:=a[j-1];
d:=l;
end;
end;
end;
procedure xuly;
var i:longint;
begin
fillchar(a,sizeof(a),0);
if n=1 then a[n]:=1
else begin
a[n-1]:=1;
a[n]:=ord(ch[n]=ch[n-1])+1;
end;
if n>2 then tim;
write(f,n-a[n]);
end;
begin
doc;
ghi;
xuly;
close(f);
end.

ai có thể giải thích cho mình bài này đc không

nhất là cái "procedure tim" và mục đích của mảng số nguyên a

mk cảm ơn nhiều

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(',').

Một trò chơi dành cho nhiều đội chơi được Ban tổ chức quy định như sau: bắt đầu cuộc chơi, Ban tổ chức cho chạy N số trên màn hình từ trái sang phải và yêu cầu đội chơi nào trả lời nhanh nhất số cách chia dãy số trên thành nhiều dãy con nhất sao cho các dãy con có tổng bằng nhau. Ví dụ: Trên màn hình chạy dòng 19 số: 1 0 2 0 0 3 1 1 1 0 2 1 0 0 2 1 2 0 1. Kết quả trả lời đúng là: tổng các...
Đọc tiếp

Một trò chơi dành cho nhiều đội chơi được Ban tổ chức quy định như sau: bắt đầu cuộc chơi, Ban tổ chức cho chạy N số trên màn hình từ trái sang phải và yêu cầu đội chơi nào trả lời nhanh nhất số cách chia dãy số trên thành nhiều dãy con nhất sao cho các dãy con có tổng bằng nhau.

Ví dụ: Trên màn hình chạy dòng 19 số: 1 0 2 0 0 3 1 1 1 0 2 1 0 0 2 1 2 0 1. Kết quả trả lời đúng là: tổng các số mỗi dãy con là 3, số dãy con nhiều nhất là 6, bao gồm các dãy con là: 1 0 2, 0 0 3, 1 1 1, 0 2 1, 0 0 2 1, 2 0 1

+Dữ liệu vào: File văn bản GAMESHOW.INP

- Dòng 1 chứa số nguyên dương N.

- Dòng 2 chứa N số chạy trên màn hình, các số cách nhau bởi dấu cách.

+ Dữ liệu ra: Ghi ra file văn bản GAMESHOW.OUT

- Dòng 1 là tổng các số của một dãy con.

- Dòng 2 là số K (số dãy con nhiều nhất chia được).

- Dòng 3 là các vị trí cuối cùng của từng dãy con, các số vị trí này cách nhau bởi dấu cách.

Ví dụ:

GAMESHOW.INP

GAMESHOW.OUT

19

1 0 2 0 0 3 1 1 1 0 2 1 0 0 2 1 2 0 1

3

6

3 6 9 12 16 19

1

const fi='gameshow.inp';
fo='gameshow.out';
var f1,f2:text;
a,b:array[1..100]of integer;
n,i,tg,d,s,x,j,vtd,vt: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]);
{----------------------xu-ly------------------}
tg:=0;
for i:=1 to n do
tg:=tg+a[i];
for i:=n downto 1 do
if tg mod i=0 then
begin
d:=0;
s:=0;
x:=tg div i;
for j:=1 to n do
begin
s:=s+a[j];
if s=x then
begin
vt:=j;
inc(d);
b[d]:=vt;
s:=0;
end;
end;
if s=0 then
begin
b[d]:=n;
break;
end;
end;
writeln(f2,x);
writeln(f2,d);
for i:=1 to d do
write(f2,b[i],' ');
close(f1);
close(f2);
end.

uses crt;
var i,n,tcd,t,t1,dem,dem1,dem2,dem3,dem4,dem5:longint;
a,b,c:array[1..100]of longint;
min,max:int64;
tbc,tbcd,tbca:real;
begin
clrscr;
write('nhap n='); readln(n);
for i:=1 to n do
begin
write('a[',i,']='); readln(a[i]);
end;
{---------------------------cau-1----------------------}
tcd:=0;
for i:=1 to n do
tcd:=tcd+a[i];
writeln('tong cac phan tu trong day la: ',tcd);
{-------------------------cau-2----------------------}
dem:=0;
t:=0;
for i:=1 to n do
if a[i]>0 then
begin
inc(dem);
t:=t+a[i];
end;
writeln('so luong cac so hang duong la: ',dem);
writeln('tong cac so hang duong la: ',t);
{-----------------------cau-3-----------------------}
dem1:=0;
t1:=0;
for i:=1 to n do
if a[i]<0 then
begin
inc(dem1);
t1:=t1+a[i];
end;
writeln('so luong cac so hang am la: ',dem1);
writeln('tong cac so hang am la: ',t1);
{---------------------cau-4---------------------------}
tbc:=tcd/n;
tbcd:=t/dem;
tbca:=t1/dem1;
writeln('trung binh cong cua ca day la: ',tbc:4:2);
writeln('trung binh cong cua cac so duong la: ',tbcd:4:2);
writeln('trung binh cong cua cac so am la: ',tbca:4:2);
{--------------------cau-5--------------------------------}
max:=0;
for i:=1 to n do
if max<a[i] then max:=a[i];
writeln('so lon nhat cua day la: ',max);
writeln('chi so cua no la: ');
dem2:=0;
for i:=1 to n do
if max=a[i] then
begin
inc(dem2);
b[dem2]:=i;
end;
for i:=1 to dem2 do
write(b[i]:4);
{---------------------cau-6-----------------------------}
writeln;
min:=maxint;
for i:=1 to n do
if min>a[i] then min:=a[i];
writeln('so nho nhat cua day la: ',min);
writeln('chi so cua no la: ');
dem3:=0;
for i:=1 to n do
if min=a[i] then
begin
inc(dem3);
c[dem3]:=i;
end;
for i:=1 to dem3 do
write(c[i]:4);
{-------------------------cau-7------------------------}
writeln;
dem4:=0;
dem5:=0;
for i:=1 to n do
begin
if a[i] mod 2=0 then inc(dem4);
if a[i] mod 2=1 then inc(dem5);
end;
writeln('so luong so chan cua day la: ',dem4);
writeln('so luong so le cua day la: ',dem5);
readln;
end.

13 tháng 3 2020

var f:text;

s:string;

i,dem,max,dau,cuoi:byte;

begin

assign(f,'xau1.txt'); reset(f);

readln(f,s);

close(f);

assign(f,'xau2.txt'); rewrite(f);

dem:=1; max:=1; dau:=1; cuoi:=1;

for i:=1 to length(s)-1 do

begin

if s[i]=s[i+1] then inc(dem) else dem:=1;

if dem>max then

begin

max:=dem;

cuoi:=i+2;

dau:=cuoi-dem;

end;

end;

write(f,dau,':',cuoi);

close(f);

readln;

end.

thanghoa

15 tháng 3 2020

Program hotrotinhoc;

const fi='xau1.txt';

fo='xau2.txt';

var

f:text;

s:string;

i,d,c,j:byte;

procedure ip;

begin

assign(f,fi);

reset(f);

read(f,s);

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

j:=0;

for i:= 1 to length(s) do

begin

if j=0 then j:=i;

if s[i] <> s[i+1] then

begin

if ((i-j)+1)>((c-d)+1) then

begin

d:=j;

c:=i;

end;

j:=0;

end;

end;

write(f,d,':',c);

close(f);

end;

BEGIN

ip;

out;

END.

16 là đến chữ a không phải chữ c mà. Nếu bạn muốn in ra 16 thì chỉ cần write(f,d,':',c+1);