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.

11 tháng 8 2019

Lời giải :

program hotrotinhoc;

const fi='dlvr.inp';

fo='dlvr.out';

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

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

f: text;

function gcd(x,y: longint): integer;

var z: longint;

begin

while y<>0 do

begin

z:= x mod y;

x:=y;

y:=z;

end;

gcd:=x;

end;

procedure ip;

begin

assign(f,fi);

reset(f);

readln(f,n);

for i:=1 to n do

read(f,a[i]);

readln(f);

readln(f,m);

for j:=1 to m do

read(f,b[i]);

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

for i:=1 to n do

for j:=1 to m do

if gcd(a[i],b[j])>max then max:=gcd(a[i],b[j]);

write(f,max);

close(f);

end;

begin

ip;

out;

end.

11 tháng 8 2019

Bạn không hiểu chỗ nào cứ hỏi mình nhé.

Cho dãy số (a1, a2, a3, ..., an) là một hoán vị bất kỳ của tập hợp (1, 2, 3, ..., n). Dãy số (b1, b2, b3, ..., bn) gọi là nghịch thế của dãy a nếu bi là số phần tử đứng trước số i trong dãy a mà lớn hơn i. Ví dụ: Dãy a là: 3 2 5 7 1 4 6 Dãy b là: 4 1 0 2 0 1 0 a. Cho dãy a, hãy xây dựng chương trình tìm dãy b. b. Cho dãy b, xây dựng chương trình tìm dãy a. Dữ liệu vào: Trong file NGICH.INP với nội...
Đọc tiếp

Cho dãy số (a1, a2, a3, ..., an) là một hoán vị bất kỳ của tập hợp (1, 2, 3, ..., n). Dãy số (b1, b2, b3, ..., bn) gọi là nghịch thế của dãy a nếu bi là số phần tử đứng trước số i trong dãy a mà lớn hơn i.

Ví dụ:

Dãy a là: 3 2 5 7 1 4 6

Dãy b là: 4 1 0 2 0 1 0

a. Cho dãy a, hãy xây dựng chương trình tìm dãy b.

b. Cho dãy b, xây dựng chương trình tìm dãy a.

Dữ liệu vào: Trong file NGICH.INP với nội dung:

-Dòng đầu tiên là số n (1 <= n <= 10 000).

-Các dòng tiếp theo là n số của dãy a, mỗi số cách nhau một dấu cách,

-Các dòng tiếp theo là n số của dãy b, mỗi số cách nhau bởi một dấu cách.

Dữ liệu ra: Trong file NGHICH.OUT với nội dung:

-N số đầu tiên là kết quả của câu a

-Tiếp đó là một dòng trống và sau đó là n số kết quả của câu b (nếu tìm được dãy a).

0
Cho dãy số (a1, a2, a3, ..., an) là một hoán vị bất kỳ của tập hợp (1, 2, 3, ..., n). Dãy số (b1, b2, b3, ..., bn) gọi là nghịch thế của dãy a nếu bi là số phần tử đứng trước số i trong dãy a mà lớn hơn i. Ví dụ: Dãy a là: 3 2 5 7 1 4 6 Dãy b là: 4 1 0 2 0 1 0 a. Cho dãy a, hãy xây dựng chương trình tìm dãy b. b. Cho dãy b, xây dựng chương trình tìm dãy a. Dữ liệu vào: Trong file NGICH.INP với nội...
Đọc tiếp

Cho dãy số (a1, a2, a3, ..., an) là một hoán vị bất kỳ của tập hợp (1, 2, 3, ..., n). Dãy số (b1, b2, b3, ..., bn) gọi là nghịch thế của dãy a nếu bi là số phần tử đứng trước số i trong dãy a mà lớn hơn i.

Ví dụ:

Dãy a là: 3 2 5 7 1 4 6

Dãy b là: 4 1 0 2 0 1 0

a. Cho dãy a, hãy xây dựng chương trình tìm dãy b.

b. Cho dãy b, xây dựng chương trình tìm dãy a.

Dữ liệu vào: Trong file NGICH.INP với nội dung:

-Dòng đầu tiên là số n (1 <= n <= 10 000).

-Các dòng tiếp theo là n số của dãy a, mỗi số cách nhau một dấu cách,

-Các dòng tiếp theo là n số của dãy b, mỗi số cách nhau bởi một dấu cách.

Dữ liệu ra: Trong file NGHICH.OUT với nội dung:

-N số đầu tiên là kết quả của câu a

-Tiếp đó là một dòng trống và sau đó là n số kết quả của câu b (nếu tìm được dãy a).

1
28 tháng 4 2020

Program day_nghich_the;

uses crt;

const fn = 'nghich.inp';

gn = 'nghich.out';

nmax=10000;

var f,g:text;

n,i,j,dem:0..nmax;

a,b,luu:array[1..nmax] of 0..nmax;

procedure nhap;

begin fillchar(a,sizeof(a),0);

b:=a;

assign(f,fn);

reset(f);

readln(f,n);

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

write(f);

for i:=1 to n do read(f,b[i]);

close(f);

end;

procedure tim_b;

begin

fillchar(luu,sizeof(luu),0);

for i:=1 to n do
begin
dem:=0;
for j:=i -1 downto 1 do
if a[i]<a[j] then inc(dem);
luu[a[i]]:=dem;
end;
for i:=1 to n do write(g,luu[i]:2);
writeln(g); writeln(g);

end;

procedure tim_a;

begin

fillchar(luu,sizeof(luu),0);

for i:=1 to n do

if b[i]>n-i then exit else

begin

j:=0;

dem:=0;

repeat inc(dem);

if luu[dem]=0 then j:=j+1;

until j>b[i];

luu[dem]:=i;

end;

for i:=1 to n do

write(g,luu[i]:2);

end;

BEGIN

nhap;

assign(g,gn);

rewrite(g);

tim_b;

tim_a;

close(g);

END.

8 tháng 12 2019

Program hotrotinhoc;

var a,b,i: word;

function nt(x: word) : boolean;

var j: integer;

begin

nt:=true;

if (x=2) or (x=3) then exit;

nt:=false;

if (x=1) or (x mod 2=0) or (x mod 3=0) then exit;

j:=6;

while j<=trunc(sqrt(x)) do

begin

if (x mod j=0) or (x mod (j+2)=0) then exit;

i:=i+5;

end;

nt:=true;

end;

begin

readln(a,b);

for i:=a to b do if nt(i) then writeln(i);

readln

end.

10 tháng 12 2019

uses crt;

var a,b,kt,i,j:integer;

begin

clrscr;

write('nhap a='); readln(a);

write('nhap b='); readln(b);

if a<b then

begin

for i:=a to b do

begin

kt:=0;

for j:=2 to i-1 do

if i mod j=0 then kt:=1;

if kt=0 then writeln(i);

end;

end;

readln;

end.

1 tháng 2 2020

#include <iostream>
#include <fstream>

using namespace std;

long int x[4],n,a[5001],kt[5001],ktvt[5001],MAXtong,dem=0;

int TRY(int i)
{
for(int j=x[i-1]+1;j<=n;j++)
if(kt[a[j]]==0)
{
x[i]=j;
kt[a[j]]=1;
if(i==3)
{

if(a[x[3]]==(float)(a[x[2]]+a[x[1]])/2||a[x[2]]==(float)(a[x[3]]+a[x[1]])/2||a[x[1]]==(float)(a[x[2]]+a[x[3]])/2)
{
dem++;
if(a[x[1]]+a[x[2]]+a[x[3]]>MAXtong)
{
MAXtong=a[x[1]]+a[x[2]]+a[x[3]];
}
}

}
else
TRY(i+1);
kt[a[j]]=0;
}
}
int main()
{
ifstream f("boba.inp");
f>>n;
for(int i=1;i<=n;i++)
{
f>>a[i];
}
x[0]=0;
MAXtong=-1000000000;
fill_n(kt,1001,0);
TRY(1);
cout<<dem<<endl;
if(dem>0)
{
cout<<MAXtong;
}
return 0;
}

Mình mới đạt tới trình độ quy hoạch động nên bạn thông cảm

Xin lỗi bạn, mình không hỗ trợ C. mình chỉ biết pascal thôi

const fi='tamhop.inp';
fo='tamhop.out';
var f1,f2:text;
a:array[1..100]of integer;
n,i,j,k,dem,max,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]);
{--------------------------------xu-ly--------------------------------}
dem:=0; max:=0;
for i:=1 to n-2 do
begin
for j:=i+1 to n-1 do
begin
for k:=j+1 to n do
begin
if (a[i]=(a[j]+a[k])/2) or (a[j]=(a[i]+a[k])/2) or (a[k]=(a[i]+a[j])/2) then
begin
inc(dem);
t:=a[i]+a[j]+a[k];
if max<=t then max:=t;
end;
end;
end;
end;
writeln(f2,dem);
writeln(f2,max);
close(f1);
close(f2);
end.

13 tháng 10 2019

Program hotrotinhoc;

const fi='lientiep.inp';

fo='lientiep.out';

var f: text;

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

k,i,n,max,vtd,vtc: integer;

procedure ip;

begin

assign(f,fi);

reset(f);

readln(f,n,k);

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

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

max:=0; i:=1;

while i<=n do

begin

j:=i;

t:=a[i];

while (a[j]<a[j+1]) and (j<=n) do

begin

inc(j);

t:=t+a[j];

end;

if t>max then

begin

max:=t;

vtd:=i;

vtc:=j;

end;

i:=j+1;

end;

for i:=vtc downto vtd do

begin

inc(d1);

b[d1]:=a[i];

end;

for i:= k dowto 1 do

write(f,b[i],' ');

close(f);

end;

begin

ip;

out;

end.

Câu 1 (6,0 điểm): Tính giá trị Nhập vào 2 số nguyên dương N và M. Yêu cầu: Tính tổng M các số tận cùng của N. Dữ liệu vào: Cho trong file văn bản CAU1.INP, có cấu trúc như sau: - Dòng 1: Ghi số nguyên dương N. - Dòng 2: Ghi số nguyên dương M (M≤ N) . Dữ liệu ra: Ghi ra file văn bản CAU1.OUT, theo cấu trúc như sau: - Ghi kết quả tổng của M số tận cùng của N. Ví...
Đọc tiếp

Câu 1 (6,0 điểm): Tính giá trị

Nhập vào 2 số nguyên dương N và M.

Yêu cầu: Tính tổng M các số tận cùng của N.

Dữ liệu vào: Cho trong file văn bản CAU1.INP, có cấu trúc như sau:

- Dòng 1: Ghi số nguyên dương N.

- Dòng 2: Ghi số nguyên dương M (M≤ N) .

Dữ liệu ra: Ghi ra file văn bản CAU1.OUT, theo cấu trúc như sau:

- Ghi kết quả tổng của M số tận cùng của N.

Ví dụ:

CAU1.INP

CAU1.OUT

34562

2

8

Câu 2 (7,0 điểm): Tìm số

Dãy các số tự nhiên được viết ra thành một dãy vô hạn trên đường thẳng:

1234567891011121314..... (1)

Yêu cầu: Viết chương trình yêu cầu nhập số K và in lên tệp CAU2.OUT kết quả là số nằm ở vị trí thứ K trong dãy (1) ở trên và số đó thuộc vào số nào?

Dữ liệu vào: Cho trong file văn bản CAU2.INP, có cấu trúc như sau:

- Ghi số nguyên dương K

Dữ liệu ra: Ghi ra file văn bản CAU2.OUT, theo cấu trúc như sau:

- Trên 1 dòng in kết quả số ở vị trí K và số chứa số đó cách nhau ít nhất một dấu cách.

Ví dụ:

CAU2.INP

CAU2.OUT

15

2 12

Câu 3 (7,0 điểm): Đếm ký tự

Cho một văn bản gồm N dòng. Các ký tự được lấy từ tập các chữ cái và chữ số.

Yêu cầu: Tìm số lượng ký tự của dòng ngắn nhất, số lượng ký tự của dòng dài nhất và số lượng ký tự của văn bản.

Dữ liệu vào: Cho trong file văn bản CAU3.INP, có cấu trúc như sau:

- Dòng 1: Ghi số nguyên dương N là số dòng của văn bản (1 ≤ N ≤ 100).

- N dòng tiếp theo: Mỗi dòng ghi một xâu gồm L ký tự (0 < L < 255).

Dữ liệu ra: Ghi ra file văn bản CAU3.OUT, theo cấu trúc như sau:

- Dòng 1: Ghi 3 số nguyên dương x y z. Trong đó: x là số lượng ký tự của dòng ngắn nhất; y là số lượng ký tự của dòng dài nhất, z là số lượng ký tự của văn bản. Các số được ghi cách nhau ít nhất một dấu cách.

Ví dụ:

CAU3.INP

CAU3.OUT

3

ThiHSG09

Nam2015

Vong1

5 8 20

4
5 tháng 9 2019

cau1

uses crt;
const
fi='CAU1.inp';
fn='CAU1.out';
var n: string;
f:text;
m,i,a,tong: integer;
BEGIN
clrscr;
assign(f,fi);reset(f);
read(f,n);
read(f,m);
close(f);
assign(f,fn);rewrite(f);
for i:= length(n) downto length(n)-m+1 do
begin
val(n[i],a);
tong:=tong+a;
end;
write(f,tong);
close(f);
readln;
END.

cau3

uses crt;
const
fi='CAU1.inp';
fn='CAU1.out';
var n: string;
f:text;
m,i,a,tong: integer;
BEGIN
clrscr;
assign(f,fi);reset(f);
read(f,n);
read(f,m);
close(f);
assign(f,fn);rewrite(f);
for i:= length(n) downto length(n)-m+1 do
begin
val(n[i],a);
tong:=tong+a;
end;
write(f,tong);
close(f);
readln;
END.

6 tháng 9 2019

Câu 2:

*Ý tưởng :

+ Ý 1:

- Bạn không cần chạy đến vô hạn như đề cho đầu , bạn chỉ cần 1 vòng for chạy đến k là được bởi vì nó lấy kí tự thứ k.

- Bạn cho 1 vòng for chạy đến k và chuyển dãy số đó sang xâu và cho 1 biến đếm vào

- Nếu biến đếm bằng với k thì write(s[d]);

+ Ý 2:

- Các số có 1 chữ số chỉ có từ 1 đến 9. Nên nếu d<9 thì write(s[d]);

- Nếu mà d>9 và d là số lẻ thì write(s[d-1],s[d]) ngược là nếu d là số chẵn thì write(s[d],s[d+1]);

Đây là ý tưởng , nếu bạn không hiểu chỗ nào cứ hỏi mình , bạn làm theo ý tưởng mình xem nhé. Nếu không được mình sẽ gửi bài làm của mình cho bạn xem.

uses crt;

var a,b,c,d,tb:real;

begin

clrscr;

write('Nhap diem cua ban:'); readln(a,b,c,d);

tb:=(a+b+c+d)/7;

if tb>=8 then writeln('Gioi');

if (6,5<=tb) and (tb<8) then writeln('Kha');

if (5<=tb) and (tb<6,5) then writeln('Trung Binh');

if tb<5 then writeln('Yeu');

readln;

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...
Đọ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