Дай изображение. пожалуйста.
int main(int argc, char* argv[])
{
char s[256] = {0};
char prevChar = {0};
std::cin >> s;
int len = strlen(s);
prevChar = s[0];
int count = 1;
for (int i = 1; i < len+1; i++)
{
if (s[i] == prevChar) {
count++;
} else {
printf("%d %c\n", count, prevChar);
count = 1;
prevChar = s[i];
}
}
return 0;
}
Решение в прикрепленном файле.
1. <span>var N, k: real; </span>
<span>begin </span>
<span>readln(N); </span>
<span>if (N<0) then k:= 0 </span>
<span>else </span>
<span>begin </span>
<span>if (frac(N)=0) then k:=N*2 </span>
<span>else k:=(trunc(N)+1)*2; </span>
<span>end; </span>
<span>writeln(k); </span>
<span>end.
2. </span><span>Первый хулиган увеличивал количество кусочков на 3
Второй - на 6
То есть, всего кусочков должно быть N = 1 + 3m + 6n
Значит, N - 1 должно делиться на 3
и наоборот, если N - 1 делится на 3
N - 1 = 3k
то возможна ситуация, когда Первый хулиган рвал k раз,
а Второй наблюдал (ничего не рвал).
Алгоритм свёлся к проверке:
Если N -1 не делится на 3, то No
КОНЕЦ</span>
Var
a : array [1..100] of longint;
sum,i : longint;
begin
sum:=0;
for i:=1 to 13 do begin readln(a[i]); sum:=sum+a[i]; end;
if sum>15
then writeln('Много')
else writeln('Мало');
end.