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.

có 2 dội cờ vua A và B thi đấu với nhau. Mỗi đội cử ra n kì thủ, Mỗi kì thủ đội B chỉ đấu 1 trận và chỉ đấu với 1 kì thủ của đội A và ngược lại. Vậy có tất cả n trận đấu. Đội thắn được 2 điểm, hai đội hoà mỗi đội nhận 1 điểm còn đội nào thua là 0 điểm.

Cho đội B được quyền chọn cập thi đấu.

Yêu cầu:

Lập trình để đội B chọn được các cập thi đấu sao cho tổng số điểm của đội B là cao nhất. Cho biết trình độ của kì thủ thứ i của 2 đội A và B lần lượt là a[i] và b[i] (i=1,2,...,n) và giả sử trong thi đấu, hai kì thủ có trình độ bằng nhau sẽ hoà và kì thủ nào có trình độ cao hơn sẽ thắng.

Dữ liệu vào:

Ghi trên file văn bản CHESS.IN, gồm n+1 dòng:

-Dòng đầu ghi số nguyên dương n,1<=n<=1000.

-Trên dòng thứ i+1 (i<=i<=n) ghi hai số nguyên a[i], b[i] (1<=a[i],b[i]<=100), cách nhau 1 khoảng trắng.

Dữ liệu ra:

Ghi ra file văn bản CHESS.OUT gồm n+1 dòng:

-Dòng đầu là số nguyên T là sum max mà đội B có thể đạt được.

-Trên dòng thứ i+1 (1<=i<=n) là số nguyên dương x[i](1<=i<=n) trong đó x[i] là số thứ tự của kì thủ của đội B phải đấu với kì thủ thứ i của đội A để tổng số điểm của đội B đạt được là t.

CHESS.IN

CHESS.OUT

4

7 8

5 6

4 3

9 4

5

1

2

4

3

 

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

- Lựa chọn một danh sách kết quả thi đấu của các đội bóng gồm các thông tin: tổng điểm đã đạt được, số bàn thắng đã ghi, số bàn thua đã nhận.

- Chọn toàn bộ bảng sau đó trên thanh công cụ Data chọn Sort hiển thị hộp thoại

- Khi hộp thoại xuất hiện lựa chọn cột tổng số điểm đạt được, sau đó chọn lệnh Add level thêm cột hiệu số bàn thắng - thua, số bàn thắng đã ghi được, tất cả sắp xếp theo thứ tự Largest to Smallest

Kết quả là xếp hạng đội bóng theo thứ tự thành tích tốt nhất từ trên xuống

Năm 2070, cuộc thi MasterChef- World Final được tổ chức lần đầu tiên tại Việt Nam, với rất nhiều quy tắc mới lạ so với các cuộc thi MasterChef thông thường. Có tất cả N thí sinh đến từ tất cả các quốc gia trên thế giới tranh tài tại cuộc thi lần này, thí sinh thứ i có khả năng nấu nướng là Ai. Một trong những thay đổi lớn nhất của MasterChef-World Final lần này, là thay vì các thí sinh...
Đọc tiếp
Năm 2070, cuộc thi MasterChef- World Final được tổ chức lần đầu tiên tại Việt Nam, với rất nhiều quy tắc mới lạ so với các cuộc thi MasterChef thông thường. Có tất cả N thí sinh đến từ tất cả các quốc gia trên thế giới tranh tài tại cuộc thi lần này, thí sinh thứ i có khả năng nấu nướng là Ai. Một trong những thay đổi lớn nhất của MasterChef-World Final lần này, là thay vì các thí sinh sẽ thi cá nhân, thì họ sẽ được ghép cặp tạo thành các team rồi mới cùng nhau tranh tài.

Những người tổ chức cuộc thi có danh sách N thí sinh, đánh số họ từ 1 tới N theo thứ tự từ trái sang phải, và bắt đầu sắp xếp họ vào các team theo các quy tắc sau:

- Mỗi team phải có một người Nam và một Nữ.

- Hai người có giới tính khác nhau, nằm cạnh nhau trong bảng danh sách, và có độ chênh lệch khả năng là nhỏ nhất, sẽ được xếp vào cùng một team. Nếu có nhiều đôi như thế, thì họ sẽ chọn ra đôi nằm ở vị trí trái nhất có thể.

- Sau khi tìm được đôi đó, tên của họ sẽ bị xóa đi, tên của những người còn lại sẽ tự động xích gần lại.

Những nhà tổ chức MasterChef-World Final muốn số đội tham gia là nhiều nhất có thể, vì họ tin rằng càng nhiều đội thi thì cuộc thi càng diễn ra lâu, tiền tài trợ, tiền truyền hình cũng vì thế mà tăng lên theo. Hãy giúp họ xác định xem, sẽ có tối đa bao nhiêu đội tham gia cuộc thi lần này.

Chú ý: Độ chênh lệch khả năng tính bằng trị tuyệt đối hiệu khả năng của hai người

Dữ liệu nhập:

- Một số nguyên N, số thí sinh tham gia cuộc thi (1 ≤ N ≤ 105).

- Dòng 2: Gồm N số nguyên ‘M’ (Men) hoặc W (Woman) tương ứng là giới tính của người thứ i

- Dòng 3: Gồm N số nguyên A1…AN là khả năng nấu nướng của người thứ i (0 ≤ ai ≤ 109)

Kết quả:

- Dòng 1: Số nguyên K, số team lớn nhất tạo được

- K dòng tiếp theo, dòng thứ i gồm hai số nguyên là chỉ số của team thứ i. Chỉ số mỗi team được in ra theo thứ tự từ lớn đến bé

1
2 tháng 1 2020

Ví dụ

-input 4
WMMW
10 11 2 3 -output 2
1 2
3 4
23 tháng 8 2023

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    int n,k;
    cin >> n >> k;
    int a[n];
    for (int i=0;i<n;i++)
        cin >> a[i];
    sort(a,a+n);
    cout << a[k-1];
    return 0;
}

Có n file đánh số 1, 2, ..., n. File thứ i có kích thước là ai. Cho trước một số đĩa mềm trắng, dung lượng của mỗi đĩa là M. Yêu cầu: Hãy tìm cách ghi file lên các đĩa mềm sao cho số đĩa mềm phải dùng là ít nhất. (Tất nhiên mỗi đĩa không thể chứa quá dung lượng M và mỗi file phải nằm gọn trong một đĩa nào đó chứ không được cắt nhỏ và ghi vào nhiều đĩa khác nhau). Ràng buộc: 1...
Đọc tiếp

Có n file đánh số 1, 2, ..., n. File thứ i có kích thước là ai. Cho trước một số đĩa mềm trắng, dung lượng của mỗi đĩa là M.

Yêu cầu: Hãy tìm cách ghi file lên các đĩa mềm sao cho số đĩa mềm phải dùng là ít nhất. (Tất nhiên mỗi đĩa không thể chứa quá dung lượng M và mỗi file phải nằm gọn trong một đĩa nào đó chứ không được cắt nhỏ và ghi vào nhiều đĩa khác nhau).

Ràng buộc: 1 ≤ n ≤ 100; các ai và M là các số nguyên dương: 1 ≤ ai ≤ M ≤ 10000. ∀i

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

. Dòng 1: Chứa 2 số n, M.

. Các dòng tiếp: Chứa các số từ a1 đến an theo đúng thứ tự đó.

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

. Dòng 1: Ghi số k là số đĩa phải dùng.

. Dòng thứ i trong k dòng tiếp theo: Ghi số hiệu của các file được ghi vào đĩa mềm thứ i.

Ví dụ:

DISKS.INP DISKS.OUT

8 14

9 7 4 3 3 2 8 6

3

1 4 6

7 8

2 3 5

2
18 tháng 2 2020

ko hiểu gì luôn ???lolang

29 tháng 7 2021

uses crt;

var f,g:text;

n,i,m,k,j:integer;

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

const fi='BAI2.INP'; fo='BAI2.OUT';

begin

assign(f,fi); reset(f);

assign(g,fo); rewrite(g);

readln(f,n);

for i:=1 to n do

readln(f,a[i]);

for i:=1 to n do

begin

m:=a[i];

for j:=i+1 to n do

if odd(m+a[j])=false then k:=k+1;

end;

write(g,k);

close(f);

close(g);

end.

 

 

24 tháng 11 2019

var n,x,y,z:integer;

begin

assign(input,'nghiemnt.inp');reset(input);

assign(output,'nghiemnt.out');rewrite(output);

readln(n);

for x:=0 to n do

for y:=0 to n-x do

begin

z:=n-x-y;

writeln(x,' ',y,' ',z);

end;

writeln('0 0 0');

end.

25 tháng 11 2019

bạn có đọc kỹ đề không vậy???

8 tháng 2 2022

t ko bt lm, ms k10

Dưới đây là mã chương trình Pascal để sắp xếp dãy số theo yêu cầu đã cho:

```pascal
program sorting;

const
MAX_N = 1000;

var
N, i, j, temp: integer;
arr: array[1…MAX_N] of integer;
oddArr, evenArr: array[1…MAX_N] of integer;
oddCount, evenCount: integer;
inputFile, outputFile: text;

begin
// Mở file input và đọc dữ liệu
assign(inputFile, 'sorting.inp');
reset(inputFile);
readln(inputFile, N);
for i := 1 to N do
read(inputFile, arr[i]);
close(inputFile);

// Sắp xếp mảng theo yêu cầu
oddCount := 0;
evenCount := 0;
for i := 1 to N do
begin
if arr[i] mod 2 = 1 then
begin
oddCount := oddCount + 1;
oddArr[oddCount] := arr[i];
end
else
begin
evenCount := evenCount + 1;
evenArr[evenCount] := arr[i];
end;
end;

// Sắp xếp mảng số lẻ tăng dần
for i := 1 to oddCount - 1 do
for j := i + 1 to oddCount do
if oddArr[i] > oddArr[j] then
begin
temp := oddArr[i];
oddArr[i] := oddArr[j];
oddArr[j] := temp;
end;

// Sắp xếp mảng số chẵn giảm dần
for i := 1 to evenCount - 1 do
for j := i + 1 to evenCount do
if evenArr[i] < evenArr[j] then
begin
temp := evenArr[i];
evenArr[i] := evenArr[j];
evenArr[j] := temp;
end;

// Mở file output và ghi kết quả
assign(outputFile, 'sorting.out');
rewrite(outputFile);
for i := 1 to oddCount do
write(outputFile, oddArr[i], ' ');
writeln(outputFile);
for i := 1 to evenCount do
write(outputFile, evenArr[i], ' ');
close(outputFile);
end.
```

Bạn có thể sao chép mã chương trình trên vào một tệp tin có tên `sorting.pas`, sau đó tạo một tệp tin `sorting.inp` và nhập dữ liệu theo định dạng đã cho. Chạy chương trình và kết quả sẽ được ghi vào tệp tin `sorting.out`.

var i,n:longint; a:array[1..1000] of longint;

begin

readln(n);

for i:=1 to n do read(a[i]);

for i:=1 to n do

     if a[i] mod 2=0 then 

         begin

              inc(k);

              b[k]:=a[i];

         end

else

begin

inc(t);

c[t]:=a[i];

end;

for i:=1 to k-1 do

for j:=i+1 to k do

if b[i]<b[j] then

begin

d:=b[i];

b[i]:=b[j];

b[j]:=d;

end;

for i:=1 to  t-1 do

for j:=i+1 to t do

if c[i]>c[j] then

begin

d:=c[i];

c[i]:=c[j];

c[j]:=d;

end;

for i:=1 to k do write(b[i],' ');

for i:=1 to t do write(c[i],' ');

end.