-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 0cb03e0
Showing
54 changed files
with
2,147 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
/* | ||
1.3 Целые числа. Шаг 12 | ||
Электронные часы | ||
Электронные часы показывают время в формате h : mm:ss(от 0:00 : 00 до 23 : 59 : 59), | ||
то есть сначала записывается количество часов, потом обязательно двузначное количество минут, | ||
затем обязательно двузначное количество секунд.Количество минут и секунд при необходимости | ||
дополняются до двузначного числа нулями. | ||
С начала суток прошло N секунд.Выведите, что покажут часы. | ||
Формат входных данных: | ||
На вход дается натурально число N, не превосходящее 107 (10000000). | ||
Формат выходных данных: | ||
Выведите ответ на задачу. | ||
Sample Input 1: 3602 | ||
Sample Output 1: 1 : 00 : 02 | ||
Sample Input 2 :129700 | ||
Sample Output 2 : 12 : 01 : 40 | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main() { | ||
int n; | ||
while (true) | ||
{ | ||
cin >> n; | ||
cout << n / 3600 % 24 << ':' << n / 60 % 60 / 10 << n / 60 % 10 << ":" << n % 60 / 10 << n % 60 % 10; | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
/* | ||
1.3 Целые числа. Шаг 15 | ||
Симметричное число | ||
Дано четырехзначное число.Определите, является ли его десятичная запись симметричной.Если число симметричное, то выведите 1, | ||
иначе выведите любое другое целое число.Число может иметь меньше четырех знаков, тогда нужно считать, | ||
что его десятичная запись дополняется слева незначащими нулями. | ||
Формат входных данных: | ||
Вводится единственное число. | ||
Формат выходных данных: | ||
Выведите одно целое число - ответ на задачу. | ||
Sample Input 1: 2002 | ||
Sample Output 1: 1 | ||
Sample Input 2: 2008 | ||
Sample Output 2: 37 | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main(){ | ||
int n; | ||
while (true) | ||
{ | ||
cin >> n; | ||
cout << 1 + n / 100 - (n % 10) * 10 - (n % 100) / 10 << endl; | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
/* | ||
1.3 Целые числа. Шаг 16 | ||
Улитка | ||
Улитка ползет по вертикальному шесту высотой H метров, поднимаясь за день на A метров, | ||
а за ночь спускаясь на B метров. На какой день улитка доползет до вершины шеста? | ||
Формат входных данных: | ||
Программа получает на вход целые неотрицательные числа H, A, B, причем H > B. Числа не превосходят 100. | ||
Формат выходных данных: | ||
Программа должна вывести одно натуральное число. Гарантируется, что A > B. | ||
Sample Input: 10 3 2 | ||
Sample Output: 8 | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main(){ | ||
int h, a, b; | ||
while (true) | ||
{ | ||
cin >> h >> a >> b; | ||
cout << 1 + (h - b - 1) / (a - b) << endl; //вычисляем дни с округлением вверх: 1+((h-a)+(a-b)-1)/(a-b) | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
/* | ||
1.4 Условный оператор. Шаг 10 | ||
Шахматный слон ходит по диагонали. Даны две различные клетки шахматной доски, определите, | ||
может ли слон попасть с первой клетки на вторую одним ходом. | ||
Формат входных данных: | ||
Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки | ||
сначала для первой клетки, потом для второй клетки. | ||
Формат выходных данных: | ||
Программа должна вывести YES, если из первой клетки ходом слона можно попасть во вторую или | ||
NO в противном случае. | ||
Sample Input: 4 4 5 5 | ||
Sample Output: YES | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main() { | ||
while (true) { | ||
int x1, x2, y1, y2; | ||
cin >> x1 >> y1 >> x2 >> y2; | ||
/* | ||
int r; | ||
r = x1 * 10 + y1 - x2 * 10 - y2; | ||
if (r % 9 == 0 || r % 11 == 0) { | ||
cout << "YES"; | ||
} else { | ||
cout << "NO"; | ||
}*/ | ||
|
||
int x, y; | ||
x = (x1 - x2); | ||
y = (y1 - y2); | ||
if (x * x == y * y) { | ||
cout << "YES"; | ||
} else { | ||
cout << "NO"; | ||
} | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
/* | ||
1.4 Условный оператор. Шаг 11 | ||
Шахматный ферзь ходит по диагонали, горизонтали или вертикали. | ||
Даны две различные клетки шахматной доски, определите, | ||
может ли ферзь попасть с первой клетки на вторую одним ходом. | ||
Формат входных данных | ||
Программа получает на вход четыре числа от 1 до 8 каждое, | ||
задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. | ||
Формат выходных данных | ||
Программа должна вывести YES, если из первой клетки ходом ферзя можно попасть во вторую | ||
или NO в противном случае. | ||
Sample Input 1: 1 1 2 2 | ||
Sample Output 1: YES | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main() { | ||
while (true) { | ||
int x1, x2, y1, y2; | ||
cin >> x1 >> y1 >> x2 >> y2; | ||
int x, y; | ||
x = x1 - x2; | ||
y = y1 - y2; | ||
if (x * x == y * y || x1 == x2 || y1 == y2) { | ||
cout << "YES"; | ||
} else { | ||
cout << "NO"; | ||
} | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
/* | ||
1.4 Условный оператор. Шаг 12 | ||
Шахматный конь ходит буквой “Г” — на две клетки по вертикали в любом направлении и | ||
на одну клетку по горизонтали, или наоборот. Даны две различные клетки шахматной доски, | ||
определите, может ли конь попасть с первой клетки на вторую одним ходом. | ||
Формат входных данных | ||
Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и | ||
номер строки сначала для первой клетки, потом для второй клетки. | ||
Формат выходных данных | ||
Программа должна вывести YES, если из первой клетки ходом коня можно попасть во вторую | ||
или NO в противном случае. | ||
Sample Input 1: 1 1 1 4 | ||
Sample Output 1: NO | ||
Sample Input 2: 1 1 8 8 | ||
Sample Output 2: NO | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main() { | ||
while (true) { | ||
int x1, x2, y1, y2; | ||
cin >> x1 >> y1 >> x2 >> y2; | ||
int x, y; | ||
x = x1 - x2; | ||
y = y1 - y2; | ||
x *= x; | ||
y *= y; | ||
if (x + y == 5) { | ||
cout << "YES"; | ||
} else { | ||
cout << "NO"; | ||
} | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
/* | ||
1.4 Условный оператор. Шаг 13 | ||
Шоколадка имеет вид прямоугольника, разделенного на N×M долек. | ||
Шоколадку можно один раз разломить по прямой на две части. | ||
Определите, можно ли таким образом отломить от шоколадки ровно K долек. | ||
Формат входных данных: | ||
Программа получает на вход три числа: N, M, K | ||
Формат выходных данных: | ||
Программа должна вывести одно из двух слов: YES или NO. | ||
Sample Input 1: 4 2 6 | ||
Sample Output 1: YES | ||
Sample Input 2: 2 10 7 | ||
Sample Output 2: NO | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main() { | ||
while (true) { | ||
int n, m, k; | ||
cin >> n >> m >> k; | ||
if (n * m >= k && (k % n == 0 || k % m == 0)) { | ||
cout << "YES"; | ||
} else { | ||
cout << "NO"; | ||
} | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
/* | ||
1.4 Условный оператор. Шаг 13 | ||
Яша плавал в бассейне размером N×M метров и устал. В этот момент он обнаружил, | ||
что находится на расстоянии X метров от одного из длинных бортиков (не обязательно от ближайшего) и | ||
Y метров от одного из коротких бортиков. Какое минимальное расстояние должен проплыть Яша, | ||
чтобы выбраться из бассейна на бортик? | ||
Формат входных данных: | ||
Программа получает на вход числа N, M, X, Y. | ||
Формат выходных данных: | ||
Программа должна вывести число метров, которое нужно проплыть Яше до бортика. | ||
Sample Input: 23 52 8 43 | ||
Sample Output: 8 | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main() { | ||
while (true) { | ||
int n, m, x, y; | ||
cin >> n >> m >> x >> y; | ||
/* | ||
if (n > m) { | ||
int tmp; | ||
tmp = m; | ||
m = n; | ||
n = tmp; | ||
} | ||
int min = 0; | ||
if ((n - x) < x) { | ||
min = n - x; | ||
} else { | ||
min = x; | ||
} | ||
if ((m - y) < min) { | ||
min = m - y; | ||
} else if (y < min) { | ||
min = y; | ||
} | ||
cout << min << endl << endl; | ||
*/ | ||
if (n > m) { | ||
n = n + m; | ||
m = n - m; | ||
n = n - m; | ||
} | ||
if (2 * x > n) { | ||
x = n - x; | ||
} | ||
if (2 * y > m) { | ||
y = m - y; | ||
} | ||
if (x < y) { | ||
cout << x; | ||
} else { | ||
cout << y; | ||
} | ||
} | ||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
/* | ||
1.4 Условный оператор. Шаг 15 | ||
Дано три числа. Упорядочите их в порядке неубывания. | ||
Формат входных данных: | ||
Вводятся три числа. | ||
Формат выходных данных: | ||
Выведите ответ на задачу. | ||
Sample Input: 1 2 1 | ||
Sample Output: 1 1 2 | ||
*/ | ||
#include <iostream> | ||
|
||
using namespace std; | ||
|
||
int main() { | ||
while (true) { | ||
int a, b, c; | ||
cin >> a >> b >> c; | ||
/* | ||
int tmp = 0; | ||
if (a > b) { | ||
tmp = a; | ||
a = b; | ||
b = tmp; | ||
} | ||
if (a > c) { | ||
tmp = a; | ||
a = c; | ||
c = tmp; | ||
} | ||
if (b > c) { | ||
tmp = b; | ||
b = c; | ||
c = tmp; | ||
} | ||
*/ | ||
/* | ||
if (a > b) { | ||
a = a + b; | ||
b = a - b; | ||
a = a - b; | ||
} | ||
if (a > c) { | ||
a = a + c; | ||
c = a - c; | ||
a = a - c; | ||
} | ||
if (b > c) { | ||
b = b + c; | ||
c = b - c; | ||
b = b - c; | ||
} | ||
*/ | ||
if (a > b) { | ||
a += b; | ||
b = a - b; | ||
a += -b; | ||
} | ||
if (a > c) { | ||
a += c; | ||
c = a - c; | ||
a += -c; | ||
} | ||
if (b > c) { | ||
b += c; | ||
c = b - c; | ||
b += -c; | ||
} | ||
cout << a << " " << b << " " << c; | ||
} | ||
return 0; | ||
} |
Oops, something went wrong.