(см. объяснение)
Объяснение:
Решение на Java:
import java.math.BigInteger;
public class Main
{
public static void main(String[] args) {
System.out.println(BigInteger.valueOf(2).multiply(BigInteger.valueOf(27).pow(7)).add(BigInteger.valueOf(3).pow(10)).subtract(BigInteger.valueOf(9)).toString(3).chars().filter(x->x=='0').count());
}
}
Решение на Python 3:
a = 2*27**7+3**10-9
s = ''
while a>0:
s = str(a % 3) + s
a //= 3
print(s.count('0'))
Результат работы программ в обоих случаях одинаковый и равен 13.
Задание выполнено!
#include <iostream>
#include <set>
#include <sstream>
#include <algorithm>
using namespace std;
int main(){
int n, num;
string line;
cout << "n = "; cin >> n;
set <int> yes;
set <int> no;
stringstream ss;
while(1) {
ss.clear();
getline(cin, line);
if(line != "HELP" && line != "YES" && line != "NO") {
ss << line;
continue;
}
if(line == "HELP") break;
if(line == "YES") {
while(ss >> num) {
yes.insert(num);
}
continue;
}
if(line == "NO") {
while(ss >> num) {
no.insert(num);
}
continue;
}
}
set <int> result;
set_difference(yes.begin(), yes.end(), no.begin(), no.end(), inserter(result, result.begin()));
for(auto it = result.begin(); it != result.end(); it++) {
cout << *it << " ";
}
return 0;
}
Дайте "лучший ответ" если решение правильное , у меня уже 1000 из но не могу набрать 5 лучших ответов
Для того, чтобы в последовательности из n элементов удалить последний путем вычеркивания каждого k-го элемента, n должно быть кратно k - это и есть условие успешного удаления. Запишем его в виде n mod k = 0, где mod - операция получения остатка целочисленного деления n на k.
Если n не кратно k, то будут вычеркнуты [n / k] элементов последовательности. Здесь [ ] - обозначение операция взятия целой части числа (антье), введенное в математику К. Гауссом.
После вычеркивания [n / k] элементов, в последовательности останется n₁ = n - [n / k] элементов. Если повторять этот процесс, то либо на шаге m будет вычеркнут последний элемент, либо количество элементов станет меньше k.
Рассмотрим приведенный в задании пример.
n=13, k=2
n mod k ≠ 0, поэтому полагаем n₁ = n - [n / k] = 13 - [13 / 2] = 13 - 6 = 7
n₁ mod k ≠ 0, поэтому полагаем n₂ = n₁ - [n₁ / k] = 7 - [7 / 2] = 7 - 3 = 4
n₂ mod k = 0, следовательно на третьем шаге вычеркивания мы получим нужный результат.
PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018Внимание! Если программа не работает, обновите версию!begin
var (n, k) := ReadInteger2;
var m := 0;
while n >= k do
begin
if n mod k = 0 then
begin
Print(m + 1);
exit
end
else
begin
n := n - n div k;
Inc(m)
end
end;
Print(0)
end.
Пример13 23Вводить данные можно как через пробел, так и построчно