Для начинающих на С. Составители
Скачать 1.31 Mb.
|
Задача 49 (№ 692) Бинарные числа (Сложность: 8%)Говорят, что плохой программист – это тот, кто считает, что в одном килобайте 1000 байт, а хороший программист – это тот, кто полагает, что в одном километре 1024 метра. Многим эта шутка понятна, так как все знают, что в процессах, связанных с информатикой и компьютерной техникой, фигурирует множество значений, выражаемых степенью двойки, то есть чисел вида 2K, где K – некоторое неотрицательное целое число. Назовем такие числа бинарными. Это такие числа как 2, 4, 8, 16, 32 и т.д. Действительно, когда речь идет о размере памяти или о разрешении экрана монитора, то мы часто наталкиваемся на бинарные числа. Все это связано с принципом хранения информации в памяти ЭВМ. Задано целое число N. Требуется определить, является ли оно бинарным. Входные данные. Входной файл INPUT.TXT содержит единственное целое число N, не превосходящее 10000 по абсолютной величине. Выходные данные. В выходной файл OUTPUT.TXT выведите YES, если заданное число является бинарным, и NO в противном случае.
#include using namespace std; int main (){ int a; cin>>a; while (a%2==0 && a>1){a=a/2;} if (a==1) cout<<"YES"; else cout<<"NO"; return 0; } Задача 50 (№ 35) Конечные автоматы ( Сложность: 11%)
Входные данные. Первая строка входного файла INPUT.TXT содержит целое число k (1 ≤ k ≤ 10000) – количество конечных автоматов. Следующие k строк содержат по два целых числа ni (0 ≤ ni ≤ 1000) и mi (0 ≤ mi ≤ 26ni2) – число состояний и переходов i-го автомата. Выходные данные. Выходной файл OUTPUT.TXT должен состоять из k строк. На i-й строке выходного файла выведите одно число – нетривиальность i-го автомата.#include using namespace std; int main(){ long long int k,m,n; int d; cin>>k; for(int i=0;i cin>>n>>m; d= 19*m + (n + 239)*(n + 366) / 2; cout< return 0; } Задача 51 (№ 81) Арбузы (Сложность: 14%)Иван Васильевич пришел на рынок и решил купить 2 арбуза: один для себя, а другой для тещи. Понятно, что для себя нужно выбрать арбуз потяжелей, а для тещи полегче. Но вот незадача: арбузов слишком много и он не знает, как же выбрать самый легкий и самый тяжелый арбуз? Помогите ему! Входные данные В первой строке входного файла задано одно число N – количество арбузов. Вторая строка содержит N чисел, записанных через пробел. Здесь каждое число – это масса соответствующего арбуза. Все числа натуральные и не превышают 30000. Выходные данные В выходной файл нужно вывести два числа через пробел: массу арбуза, который Иван Васильевич купит теще и массу арбуза, который он купит себе. # include
using namespace std; int main () { int n, max, i, min, ves; cin>>n; max=0; min=30001; for (i = 1; i <=n; i++){ cin>>ves; if (ves>max) (max=ves); if (ves cout< return 0; } |