1 for i: =1 to 10 do2 begin3 x[i]: = random(0)-2; 4 write(x[i]: 1); 5 end;
srgymakarov
03.05.2022
Классическая про рыцарей, лжецов и нормальных людей. есть шесть высказываний, три пары по два. следовательно, у нас 6 вариантов развития событий, т.к. каждый из них может быть либо лжецом, либо рыцарем (всегда говорящим правду), либо нормальным (который и так и так). перейдем к символьным обозначениям. a: a невиновен, с виновен b: с невиновен, a виновен с: с невиновен, b невиновен для начала, с не может быть лжецом, т.к. в противном случае он бы утверждал, что и в и с виновны. далее, если с говорит правду, то а виновен, и в придется ему противоречить, т.к. если в лжец, то с виновен, а мы знаем, что виновен а, а если в нормальный, либо а и с виновный, чего быть не может, либо а и с невиновны, что противоречит с. получаем, что с нормальный. тогда либо в правда, тогда а виновен, и лжец, и это вызовет противоречие с с (из его слов выходит, что либо в, либо с виновен). либо а правда, тогда с виновен, и в лжец, что противоречий не вызывает. ответ таков - а сказал правду оба раза, в лжец, а с один раз соврал и один раз сказал правду. и при этом с утаил клад. тогда можно спокойно отпускать смита и джона.
tanyashevvvv
03.05.2022
#include < iostream> #include < vector> #include < algorithm> using namespace std; int main() { string s; vector< char> vowels = {'a','e','i','o','u','y'}; cin > > s; int count_letters = 0; int count = 0; int state = -1; int c = state; for(int i = 0 ; i < s.length(); i++, c = state) { if(find(vowels..) ! = vowels. state = 0; else state = 1; if(c==state) count_letters++; if(count_letters == 3) { count_letters = 1; count++; } } cout < < count ; }