Вася та кулі
Нещодавно Вася взнав,
що з кулями можна грати у дуже захоплюючу гру. У цій грі потрібно складати кулі
у вигляді різноманітних геометричних фігур та тіл. Поки що Вася займається
викладуванням куль у вигляді рівносторонього трикутника. Але ось невдача: іноді
Васі не вистачає наявних куль, і він хоче знати, яка найбільша сторона такого
трикутника, для якого вистачить Васиних куль? Допоможіть Васі, напишіть для
нього програму, яка буде обчислювати n - довжину
сторони рівносторонього трикутника для заданої кількості куль k.
Нижче наведено приклад
укладки куль у вигляді рівностороннього трикутника:
Вхідні дані
Натуральне число k (0 ≤ k ≤ 2 *
108
) - наявна кількість
куль.
Вихідні дані
Вивести число n -
відповідь до задачі.
Вхідні дані #1
6
Вихідні дані #1
3
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[]
args)
{
int
k = int.Parse(Console.ReadLine());
int
c = 0;
int
n = 0;
while
(c <= k)
{
n++;
c = c + n;
}
Console.WriteLine(n
- 1);
}
}
}
Шеренга
Петя
Васічкін перейшов у іншу школу. На уроці фізкультури йому потрібно визначити
своє місце в строю...
Вхідні дані
Спочатку
вводиться кількість учнів n у класі. Потім задана
незростаюча послідовність з n чисел, що позначає
зріст кожної людини в строю. Далі йде зріст x Петі.
Усі числа натуральні та не перевищують 200.
Вихідні дані
Вивести
номер, під яким Петя повинен стати у строй. Якщо в строю є учні з однаковим
зростом як у Петі, то він повинен стати після них.
Вхідні дані #1
8
165 163 160 160 157 157 155 154
162
Вихідні дані #1
3
static void
Main(string[] args)
{
int
n = int.Parse(Console.ReadLine());
var
s = Console.ReadLine();
var
massiv = s.Split(' ');
int
Vasichkin = int.Parse(Console.ReadLine());
for
(int i = 0; i < n; i++)
{
if
(Vasichkin > int.Parse(massiv[i]))
{
Console.WriteLine(i
+ 1);
return;
}
}
Console.WriteLine(n
+ 1);
}
Грушеве дерево
У Васиної бабусі у садку росте багато різних плодових дерев. Одне грушеве
дерево вона посадила у день народження Васі і сказала, що як тільки воно почне
плодоносити, Вася повиен з`їдати всі дозрівші на ньому груші. У цьому році на
Васиній груші вперше з`явились плоди. Вася перерахував всі плоди - їх виявилось N штук.
Як тільки достигли перші груші, Вася перерахував їх і з`їв. Їх було K штук
- чудових, великих і соковитих. Виявилось, що кожен день дозріває на M штук
більше, ніж у попередній день. Бабуся сказала, що груші дуже корисні для
Васиного здоров`я, і, відповідно, кожен день Вася повинен їсти їх якомога
більше. На щастя, груші виявились такими смачними, що кожен день Вася з`їдає
всі достигші в цей день і радує цим свою бабусю.
Скільки груш Вася з`їсть в останній день, коли дистигне N-а
груша?
Вхідні дані
У вхідном файлі задано цілі числа N, K та M.
Всі числа не перевищують 1000000000.
Вихідні дані
Вивести одне ціле число - відповідь на задачу.
Вхідні дані
Sample 1
10 1 1
Sample 2
100 20 10
Вихідні дані
Sample 1
4
Sample 2
10
static void
Main(string[] args)
{
string
setir = Console.ReadLine();
var
massiv = setir.Split(' ');
int
n = int.Parse(massiv[0]);
int
k = int.Parse(massiv[1]);
int
m = int.Parse(massiv[2]);
while
(n > 0)
{
if
(n <= k)
{
k = n;
n = n - k;
}
else
{
n = n - k;
k = k + m;
}
}
Console.WriteLine(k);
}
Книга
Крім слідкування за
офісом з вікна свого будинку, влітку Василько читав книжку. Щоб читати було не
так нудно, він попутно рахував кількість цифр, які потрібно для нумерації всіх
сторінок у книжці. В результатеі він отримав N цифр.
Вася пом`ятає, що на
перших трьох сторінках книжки номери не стоять, а пронумеровані сторінки
починаються з 4-ї (при цьому на цій 4-й сторінці стоїть
номер 4, на наступній — 5, і так далі).
Тепер Василька цікавить питання, скільки
ж всього сторінок було у прочитаній ним книжці.
Вхідні дані
Вводиться одне
натуральне число N (1 ≤ N≤ 10000)
— кількість цифр, які було використано для нумерації сторінок книжки.
Вихідні дані
Виведіть кількість
сторінок в книжці. Гарантується, що Василько не помилився в підрахунках, і
відповідь завжди існує.
Вхідні дані
Sample 1
1
Sample 2
2
Sample 3
3
Sample 4
10
Вихідні дані
Sample 1
4
private static
int Ra(int x)
{
if
(x < 10) return 1;
if
(x < 100) return 2;
if
(x < 1000) return 3;
return
4;
}
static void Main(string[]
args)
{
int
n = int.Parse(Console.ReadLine());
int
s = 3;
while
(n > 0)
{
s++;
n = n - Ra(s);
}
Console.WriteLine(s);
}
Торт
Після завершення другого туру олімпіади з програмування
участники олімпіади вирішили відмітити цю подію. З цією метою було замовлено
один великий торт прямокутної форми. При цьому стіл, навколо якого зібрались
участники був круглим. Звичайно, у них виникло питання, чи поміститься
прямокутний торт на круглому столі так, щоб жодна частина торту не виходила за
межі столу. Вам необхідно дати відповідь на це питання, знаючи розміри торту і
радіус столу.
Вхідні дані
Містить три натуральних числа: радіус столу r (1 ≤ r ≤ 1000),
ширину торту w та довжину торту l (1 ≤ w ≤ l ≤ 1000).
Вихідні дані
Вивести слово YES, якщо торт поміщається
на столі, і слово NO у протилежному випадку.
Вхідні дані #1
38 40 60
Вихідні дані #1
YES
static
void Main(string[]
args)
{
string
s = Console.ReadLine();
var
massiv = s.Split(' ');
int
r = int.Parse(massiv[0]);
int
w = int.Parse(massiv[1]);
int
l = int.Parse(massiv[2]);
Console.WriteLine(Math.Sqrt(w * w + l * l) <= 2 * r ? "YES" : "NO");
}
Кількість речень
Визначити кількість речень у заданому
фрагменті тексту.
Вхідні дані
У єдиному рядку задано фрагмент тексту
на англійській мові, кількість символів у якому не перевищує 250.
Гарантується, що у тексті відсутні тире, дефіси, цифри і числа.
Вихідні дані
Єдине число - кількість речень у
фрагменті.
Вхідні дані #1
Hello world!
Вихідні дані #1
1
static void
Main(string[] args)
{
var
s = Console.ReadLine();
s = s.TrimStart(' ');
s = s.TrimEnd(' ');
while
(s.Contains("
"))
{
s = s.Replace(" ",
" ");
}
var
say = s.Split(new[] { '.',
'?', '!'
}, StringSplitOptions.RemoveEmptyEntries).Length;
Console.WriteLine(say);
}
Зсунь елементи
Задано
масив цілих чисел довжини n. Зсунути елементи масиву циклічно
праворуч на 1 крок.
Вхідні дані
У
першому рядку задано кількість елементів масиву n (n ≤ 100).
У другому рядку задано самі елементи масиву, значення кожного з яких за модулем
не перевищує 100.
Вихідні дані
В
єдиному рядку вивести n чисел - нові значення
елементів масиву.
Вхідні дані #1
4
1 2 3 4
Вихідні дані #1
4 1 2 3
static void
Main(string[] args)
{
int
len = int.Parse(Console.ReadLine());
string
eded = Console.ReadLine();
var
massiv = eded.Split(' ');
string
c = massiv[len - 1];
for
(int i = 0; i < len - 1; i++)
{
c = c + " " + massiv[i];
}
Console.WriteLine(c);
}
Яка чверть?
Задано точку з
координатами х та у. Визначити, в якій
координатній чверті вона розміщена.
Вхідні дані
У єдиному рядку через
пропуск задано 2 дійсні числа - координати точки, значення
координат по модулю не перевищують 100.
Вихідні дані
Єдине число - номер
відповідної чверті, або 0, якщо однозначно визначити чверть
неможливо.
Вхідні дані
12 31
Вихідні дані
1
static void
Main(string[] args)
{
string
s = Console.ReadLine();
var
massiv = s.Split(' ');
double
x = double.Parse(massiv[0]);
double
y = double.Parse(massiv[1]);
if
((x == 0) || (y == 0)) Console.WriteLine("0");
if
((x > 0) && (y > 0)) Console.WriteLine("1");
if
((x < 0) && (y > 0)) Console.WriteLine("2");
if
((x < 0) && (y < 0)) Console.WriteLine("3");
if
((x > 0) && (y < 0)) Console.WriteLine("4");
}
Модуль максимального
Задана послідовність
дійсних чисел. Обчислимо їх модулі. Знайдіть максимальне значення серед цих
модулей.
Вхідні дані
У першому рядку задано
кількість елементів n (n ≤ 100)
у послідовності. У наступному рядку задано n дійсних
чисел - елементи послідовності, значення яких не первищують за модулем 100.
Вихідні дані
Виведіть максимальне
значення серед цих модулей з 2 десятковими знаками.
Вхідні дані #2
4
-76.45 7.5 -5.1 75.23
Вихідні дані #2
76.4
static void Main(string[]
args)
{
int
n = int.Parse(Console.ReadLine());
string
s = Console.ReadLine();
var
massiv = s.Split(' ');
double
max = -100;
for
(int i = 0; i < n; i++)
{
double
d = double.Parse(massiv[i]);
if
(d > max) max = d;
}
max = Math.Abs(max);
Console.WriteLine("{0:N2}", Math.Round(max,2));
}
Комментариев нет:
Отправить комментарий