OINF-CLUB
Գլխավոր
Մուտք
Գրանցվել
Ուրբաթ, 19.04.2024, 17:16Ողջունում եմ ձեզ հյուր | RSS
[ Նոր հաղորդագրություններ · Մասնակիցներ · Ֆորումի կանոնները · Որոնում · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: TMNT  
Ֆորում » Խնդիրների վերլուծություններ » Օլիմպիադա ինֆորմատիկայից` նվիրված ակումբի հիմնադրման մեկ ամյակին: » ԿԻՍԱԵԶՐԱՓԱԿԻՉ (SEMIFINAL)
ԿԻՍԱԵԶՐԱՓԱԿԻՉ (SEMIFINAL)
oinf-clubДата: Չորեքշաբթի, 15.12.2010, 18:29 | Сообщение # 1
Կայքի հիմնադիր
Группа: Ադմինիստրատորներ
Сообщений: 19
Репутация: 10
Статус: Օֆլայն
ԽՆԴՐԻ ՎԵՐԼՈւԾՈւԹՅՈւՆԸ

Sn-ով նշանակենք ակումբի անդամների կողմից հաշված գումարը, եթե մրցամարտի ժամանակ լուծվել է n խնդիր: Մրցամարտի սկսվելուց առաջ խնդիր չի լուծվել, այդ պատճառով n=0 և S0=0: Ամեն լուծված խնդրից հետո գումարը ավելանում է n-ով, այսինքն Sn=Sn-1+n: Կստանանք թվերի հաջորդականություն 0, 1, 3, 6, 10, 15, … : Մաթեմատիկայում այդ թվերին անվանում են եռանկյուն թվեր: Այսպիսով խնդիրը լուծելու համար տրված թվից հանում ենք 1, 2, 3, …, թվերը մինչև տրված թիվը հավասարվի զրոի: Վերջին հանված թիվն էլ կլինի խնդրի պատասխանը:

 
TamaraДата: Չորեքշաբթի, 15.12.2010, 18:35 | Сообщение # 2
Շարքային
Группа: Пользователи
Сообщений: 5
Репутация: 10
Статус: Օֆլայն
Ներկայացնում եմ իմ լուծումը Pascal լեզվով
Code
VAR N,K:INTEGER;
BEGIN
      ASSIGN(INPUT,'INPUT.TXT');
      RESET (INPUT);
      ASSIGN(OUTPUT,'OUTPUT.TXT');
      REWRITE (OUTPUT);
      READLN(N);
      K:=0;   
      WHILE N>0 DO
      BEGIN
           INC(K);  
           N:=N-K
      END;
      WRITELN(K)  
END.
 
TMNTДата: Չորեքշաբթի, 15.12.2010, 18:37 | Сообщение # 3
Շարքային
Группа: Модераторы
Сообщений: 14
Репутация: 10
Статус: Օֆլայն
Ահա իմ լուծումը C++ լեզվով
Code
#include <fstream.h>
void main()
{
  ifstream fin("input.txt");
  ofstream fout("output.txt");
  long n,s=0,i=1;
  fin >> n;
  while (s!=n)
  {
   s+=i;
   i++;
  }
  fout << i-1 << endl;
}
 
ArmanДата: Չորեքշաբթի, 15.12.2010, 19:50 | Сообщение # 4
Շարքային
Группа: Пользователи
Сообщений: 3
Репутация: 10
Статус: Օֆլայն
Խնդրի լուծումը Visual Basic-ով:

Code
Private Sub Form_Load()
a = FreeFile
Open "Input.txt" For Input As #a
Input #a, s: Close #a : d=0
While s <> f
d = d + 1
f = f + d
Wend
Open "Output.txt" For Output As #a
Print #a, d: Close #a
End
End Sub


Сообщение отредактировал Arman - Հինգշաբթի, 16.12.2010, 13:17
 
SerojДата: Չորեքշաբթի, 15.12.2010, 20:14 | Сообщение # 5
Շարքային
Группа: Пользователи
Сообщений: 8
Репутация: 10
Статус: Օֆլայն
խնդրի լուծումը Turbo Basic-ով

Code
open "input.txt" for input as #1
open "output.txt" for output as #2
input #1,N#
K#=0
for I#=1 to N#
K#=K#+I#
if K#=N# then print #2,I#
next I#
if N#=0 then print #2,"0"
close #1
close #2
end
 
Ֆորում » Խնդիրների վերլուծություններ » Օլիմպիադա ինֆորմատիկայից` նվիրված ակումբի հիմնադրման մեկ ամյակին: » ԿԻՍԱԵԶՐԱՓԱԿԻՉ (SEMIFINAL)
  • Страница 1 из 1
  • 1
Поиск:


Copyright Արամ Հովհաննիսյան © 2024