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.
var
i,j,n,k,x,vt:longint;
s,r,s1,s2:ansistring;
A:array[0..101] of boolean;
B:array[0..101] of longint;
BEGIN
assign(input,'gach.inp'); reset(input);
assign(output,'gach.out'); rewrite(output);
read(n,k);
for i:=1 to 101 do
A[i]:=true;
A[1]:=false;
for i:=1 to trunc(sqrt(101)) do
if (A[i] = true) then
for j:=2 to 101 div i do
A[i*j]:=false;
vt:=0;
for i:=1 to 101 do
if (A[i] =true) then
begin
inc(vt);
B[vt]:=i;
end;
for i:=1 to n do
begin
str(B[i],r);
s:=s+r;
end;
x:=length(s)-k-1;
vt:=1;
while (x >= 0) do
begin
for j:=vt to length(s)-x do
if (s[vt] > s[j]) then vt:=j;
s1:=s1+s[vt];
dec(x);
inc(vt);
end;
x:=length(s)-k-1;
vt:=1;
while (x >= 0) do
begin
for j:=vt to length(s)-x do
if (s[vt] < s[j]) then vt:=j;
s2:=s2+s[vt];
dec(x);
inc(vt);
end;
writeln(s);
writeln(s1);
writeln(s2);
close(input);
close(output);
END.
câu hỏi này bạn nên để chị @Nguyễn Minh Lệ trả lời giúp bạn
program bt;
uses crt;
var n,i,j:word;
a:array[1..100] of longint;
begin
clrscr;
write('nhap so n:');readln(n);
for i:=1 to n+1 do a[i]:=0;
a[1]:=1;
for i:=0 to n do
begin
for j:=i+1 downto 2 do a[j]:=a[j]+a[j-1];
for j:=1 to i+1 do write(a[j]:3);
writeln;
end;
readln;
end.
Bài bạn có 1 số lỗi về cú pháp. Và đề không yêu cầu sử dụng tệp .
VD lỗi : if uoc:=2 then S:=S+A;
Nhưng thuật toán vậy là đúng rồi. Mình sẽ tặng bạn GP
Cách 2:
uses crt;
var f:array[1..100]of integer;
n,i,t,kt,j:integer;
begin
clrscr;
write('Nhap n='); readln(n);
f[1]:=1;
f[2]:=1;
i:=2;
repeat
i:=i+1;
f[i]:=f[i-1]+f[i-2];
until i=n;
t:=0;
for i:=1 to n do
if f[i]>1 then
begin
kt:=0;
for j:=2 to f[i]-1 do
if f[i] mod j=0 then kt:=1;
if kt=0 then t:=t+f[i];
end;
writeln(t);
readln;
end.
uses crt;
var n,n1,s:real;
begin
clrscr;
write('Nhap n: ');readln(n);
n1:=2*n+1;
s:=((n1 - 1)/2+1)*(n1 + 1)/2;
write(s:0:0);
readln
end.
program hotrotinhoc;
const fi='NT.INP';
fo='NT.OUT';
var x,y,d,n: integer;
f: text;
function nt(a: byte): boolean;
var j: byte;
begin
nt:=true;
if (a=2) or (a=3) then exit;
nt:=false;
if (a<=0) or (a=1) or (a mod 2=0) or (a mod 3=0) then exit;
j:=6;
while (j<=trunc(sqrt(a))) do
begin
if (a mod j=0) or (x mod (j+2)=0) then exit;
j:=j+5;
end;
nt:=true;
end;
procedure ip;
begin
assign(f,fi);
reset(f);
read(f,n);
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
d:=0;
for x:=1 to n do
for y:=x to n do
if (x+y=n) and nt(x) and nt(y) then inc(d) ;
write(f,d);
close(f);
end;
begin
ip;
out;
end.
var n,x,dem:byte;
f:text;
function kt(so:byte):boolean;
var k:byte;
begin
if (so=2) or (so=3) then exit(true);
if (so=1) or (so mod 2=0) or (so mod 3=0) then exit(false);
k:=5;
repeat
if (so mod k =0) or (so mod (k+2)=0) then break;
inc(k,6);
until k>trunc(sqrt(so));
exit(k>trunc(sqrt(so)));
end;
begin
assign(f,'NT.inp');reset(f);
readln(f,n);
close(f);
assign(f,'NT.out');rewrite(f);
dem:=0;
for x:=1 to n div 2 do
if (kt(x)) and (kt(n-x)) then inc(dem);
writeln(f,dem);
close(f);
readln
end.
chúc bạn học tốt!
#include <bits/stdc++.h>
using namespace std;
const long long maxint=3*1e5+10;
long long a[maxint],i,n,x,k,c[maxint]={0};
int main()
{
freopen("leaknum.inp","r",stdin);
freopen("leaknum.out","w",stdout);
cin>>n;
for (i=1; i<=n; i++)
{
cin>>x;
if (x<=n) c[x]++;
}
i=0;
while (c[i]>0)
i=i+1;
cout<<i;
return 0;
}