//PascalABC.NET версия 3.2, сборка 1389 //Если программа не запускается, то обновите версию uses System.Linq; begin begin writeln('I'); var n := ReadInteger('n='); Writeln((1 + 1 + Power(2, n - 1)) * n / 2); end;
begin writeln; writeln('II'); var n := ReadInteger('n='); Writeln(n mod 11 = 0 ? 'YES' : 'NO');
end;
begin writeln; writeln('III'); var a := ReadArrInteger('Документы', ReadInteger('n=')).ToList; writeln;
while a.Any() do begin write(a[0], ' '); a.RemoveAt(0); if not a.Any then break;
write(a.Last, ' '); a.RemoveAt(a.Count - 1); if not a.Any then break;
var n := 0; if a.Count > 1 then n := a.Count div 2 - 1; write(a[n], ' '); a.RemoveAt(n); end; end; end.
{Целевой язык не указан, приведу пример на Haskell}
Цена вычисляется как
C - максимальная цена, которую мы можем себе позволить.
Поэтому , где div - оператор целочисленного деления.
Кодmodule Spinner (spinner, maybeTo) whereimport Control.Monad.Fail as MFail (MonadFail, fail) import System.IO (hFlush, stdout)import Text.Read (readMaybe)import Data.Maybe (maybe)maybeTo :: (MonadFail m) => Maybe b -> String -> m bmaybeTo Nothing msg = MFail.fail msgmaybeTo (Just a) _ = return aspinner :: IO ()spinner = do putStr "Enter an A: " hFlush stdout maybeA <- fmap readMaybe getLine :: IO (Maybe Int) a <- maybeTo maybeA "It's not an Int" putStr "Enter an B: " hFlush stdout maybeB <- fmap readMaybe getLine :: IO (Maybe Int) b <- maybeTo maybeB "It's not an Int" putStr "Enter an C: " hFlush stdout maybeC <- fmap readMaybe getLine :: IO (Maybe Int) c <- maybeTo maybeC "It's not an Int" maybe (putStrLn "You can't use 0 with B var!") (putStrLn . ("The maximum spinner's levers number is " ++) . show) (makeNumber a b c) putStrLn ""makeNumber :: Int -> Int -> Int -> Maybe Int makeNumber _ 0 _ = NothingmakeNumber a b c = Just $ div (c - a) b
Дано:
K = 200 * 300 = 60000
N = 16
Найти:
V - ?
ответ: 29,3 Кб