неділя, 1 листопада 2015 р.

2385

Кількість перестановок

За заданим натуральним числом n знайти кількість різних перестановок чисел від 1 до n.
Вхідні дані
Одне число n (1 ≤ n ≤ 12).
Вихідні дані
Вивести кількість різних перестановок чисел від 1 до n.

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main{ public static void main(String [] args){ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = 0; try { n = Integer.parseInt(br.readLine()); } catch (NumberFormatException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } long k=1; for (long i = 1; i<=n;k*=i++){} System.out.println(k); } }

2733

Задано два цілих невід'ємних числа nm < 30n і m різні.
Виведіть значення сумми 2n+2m, використвуючи лише бітові операції.
Вхідні дані
Задані 2 числа.
Вихідні дані
Шуканий результат.

import java.io.*; import java.util.*; public class Main { private static Scanner in; public static void main(String[] args) { in = new Scanner(System.in); PrintWriter out = new PrintWriter(System.out); int A = in.nextInt(); int B = in.nextInt(); out.println((int)(Math.pow(2,A)+Math.pow(2, B))); out.flush(); } }

2862

Кількість дільників

Знайти кількість дільників числа n.
Вхідні дані
Одне натуральне число n (n < 10000).
Вихідні дані
Кількість дільників числа n.

import java.io.*; import java.util.*; public class Main { private static Scanner in; public static void main(String[] args) { in = new Scanner(System.in); PrintWriter out = new PrintWriter(System.out); int n = in.nextInt(); int k=0; int i=1; for(i=1;i<n;i++) if(n%i==0) k+=1; out.println(k+1); out.flush(); } }

3733

Найменше спільне кратне

Обчисліть найменше спільне кратне усіх цілих чисел від 1 до N.
Вхідні дані
Вхідний файл містить натуральне число n (1 ≤ n≤ 30).
Вихідні дані
Виведіть ціле число - відповідь до задачі.

import java.util.*; import java.io.*; public class Main{ public static void main(String[] argv) throws IOException{ new Main().run(); } //функція знаходження найбільшого спільного дільника long NOD(long a,long b){ while (a!=0 && b!=0){ if (a > b) a = a % b; //для збільшення швидкості робимо через остачу від ділення else b = b % a; } a=a+b; return a; } //функція знаходження найбільшого спільного кратного long NOK(long a,long b){ //згідно означення НСК=a*b/НОД(a,b) //але щоб зменшити ймовірність виходу за межі розрядності //спочатку ділимо більше, а потім множимо на менше long aa,bb; if (a>b) {aa=a;bb=b;} else {aa=b;bb=a;} return aa/NOD(a,b)*bb; } PrintWriter pw; Scanner sc; public void run() throws IOException{ sc = new Scanner(new File("input.txt")); long n=sc.nextInt(); pw = new PrintWriter(new File("output.txt")); long NOKr=1; //знаходимо НСК для поперднього НСК та наступного числа for (int i=2; i<=n; i++){ NOKr=NOK(i,NOKr); } pw.println(NOKr); pw.close(); } }

3867

Лінивий Мишко

prb3867Мишко домовився з хлопцями пограти у футбол і вже зібрався виходити з хати, але тут його спіймала мама і сказала, що доки Міша не допоможе їй з домашньою роботою, на футбол він не піде. На вибір мама запропонувала Мишку виконату одну з трьох справ: або вимити посуд, або пропилесосити квартиру, або погратись з молодшою сестричкою Маринкою, поки мама сходить у магазин. Мишко прикинув, скільки часу займе кожна справа:
  • На миття посуду піде t1 секунд
  • Пропилесосити квартиру можна за t2 секунд
  • Процес гри з Маринкою займе t3 секунд
Зрозуміло, что Мишко вибере ту справу, яка займе мінімум часу. Ваша програма повинна вивести час, протягом якого Мишко буде виконувати мамине завдання.
Вхідні дані
Вхідний файл містить три цілих числа t1t2t31 ≤ t1t2t3 ≤ 1000.
Вихідні дані
Ви повинні вивести мінімальний час, який знадобиться Мишку для виконання маминого завдання.

import java.io.PrintWriter; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); PrintWriter out = new PrintWriter(System.out); int a = in.nextInt(); int b = in.nextInt(); int c = in.nextInt(); if(a>c) if(b>c) {out.println(c);} if(a>b) if(c>b) {out.println(b);} if(a<b) if(a<c) {out.println(a);} if(a==b) if(b>c) {out.println(c);} if(a==c) if(a>b) {out.println(b);} if(a<b) if(b==c) {out.println(a);} if(a==b) if(b<c) {out.println(a);} if(a==c) if(a<b) {out.println(a);} if(a==b) if(a<b) {out.println(c);} if(a==b) if(b==c) if(c==a) {out.println(a);} out.flush(); } }



4715

Милі Слоники

prb4715У одному індійському селищі учитель попросив хлопчика Манмохана порахувати кількість слонів у селищі. Манмохан перерахував усіх слонів у селі, і у нього вийшло деяке двозначне число n. Але замість того, щоб повідомити відповідь учителю, Манмохан вирішив трішки пожартувати. Для цьогоМанмохан відняв від отриманого числа суму його цифр, результат розділив на 9 (відкинувши при цьому дробову частину результату), отримане число збільшив на 1, потім дописав у кінець отриманого числа останню цифру початкового числаn і від результату відняв 10. Те, що вийшло у кінці, він і повідомив учителю.
Не дивлячиь на усю хитрість Манмохана, учитель зміг за отриманим числом визначити, скільки ж слонів було у селищі. Визначте це і Ви.
Вхідні дані
Ціле число, яке отримав Манмохан.
Вихідні дані
Вивести кількість слонів у селищі.

import java.io.*; import java.util.*; public class Main { private static Scanner in; public static void main(String[] args) { in = new Scanner(System.in); PrintWriter out = new PrintWriter(System.out); int A = in.nextInt(); int a; int b; a=A/10; b=A%10; int vid; vid=A-(a+b); int d; d=vid/9; int z; z=d+1; int t; t=z*10+b; out.println(t-10); out.flush(); } }

4716

Поділ яблук - 1

prb4716n школярів ділять k яблук порівну, залишок, що не ділиться, залишається у корзинці. Скільки яблук дістанеться кожному школяру?
Вхідні дані
Два додатніх цілих числа n та k, які не перевищують 1500 - рідко у школі буває більше учнів, да й багато яблук також їсти шкідливо...
Вихідні дані
Вивести кількість яблук, яке дістанеться кожному школяру.

import java.io.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); PrintWriter out = new PrintWriter(System.out); int k= in.nextInt(); int n = in.nextInt(); int a; a=n/k; out.println(a); out.flush(); } }

4717

Поділ яблук - 2

prb4717n школялів ділять k яблук порівну. Залишок, що не ділиться, залишається у кошику. Скільки яблук залишиться у кошику?
Вхідні дані
Два додатніх цілих числа n та k, не більших за 1500 - рідко у школі буває більше учнів, да й де знайти такий кошик?
Вихідні дані
Вивести кількість яблук, що залишаться у кошику.

import java.io.*; import java.util.*; public class Main { private static Scanner in; public static void main(String[] args) { in = new Scanner(System.in); PrintWriter out = new PrintWriter(System.out); int k= in.nextInt(); int n = in.nextInt(); int a; a=n%k; out.println(a); out.flush(); } }

4718

Привіт, Гаррі!

hello,
harry
Напишіть програму, яка вітає користувача, виводячи слово Hello, ім'я користувача та розділові знаки у наступному вигляді: Hello, Harry
Вхідні дані
У єдиному рядку вводиться ім'я користувача.
Вихідні дані
У першому рядку виведіть привітання.

import java.io.*; public class Main { public static void main(String[] args) throws IOException { String c; BufferedReader kb=new BufferedReader(new InputStreamReader(System.in)); c=kb.readLine(); System.out.println("Hello, "+c); } }

4719

Тура

prb4719Потрібно визначити, чи б'є тура, яка стоїть на клітинці з вказаними координатами (номер рядка та номер стовбця), фігуру, яка стоїть на іншій клітинці.
Вхідні дані
Вводяться чотири числа: координати тури (два числа) та координати іншої фігури (два числа), кожне число вводиться у окремому рядку.
Вася - хлопчик, що запропонував цю задачку, ще не вивчив шахову нотацію, тому позицію фігур задає за своїми правилами, які більш схожі на положення точок у 1-ій чверті координатної площини, ніж на опис шахової позиції.
Вихідні дані
Виведіть "YES", якщо тура б'є фігуру, інакше виведіть "NO".

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int a = in.nextInt(), b = in.nextInt(), c = in.nextInt(), d = in.nextInt(); if((a == c && b != d) || (a != c && b == d)) System.out.println("YES"); else System.out.println("NO"); } }