bool ok1(int a, int b, int c){
return (a+b > c && a+c > b && b+c > a) && min(a,min(b,c)) > 0;
}
bool ok2(int a, int b, int c){
return ok1(a,b,c) && (a == b || a == c || b == c);
}
signed main(){
const int n = 3, m = 7;
int arr[n][m];
for(int i = 0; i < n; i++)
for(int j = 0; j < m; j++)
cin >> arr[i][j];
vector<int> ans;
for(int j = 0; j < m; j++)
if(ok2(arr[0][j],arr[1][j],arr[2][j]))
ans.push_back(j+1);
cout << ans.size() << "\n";
for(auto i: ans)
cout << i << " ";
}
Подробнее - на -
Объяснение:
// Внимание! Если программа не работает, обновите версию!
begin
var s:=ReadlnString('>');
var k:=s.Length mod 4;
if k>0 then s:=(4-k)*'0'+s;
var a:=s.Batch(4).Select(c->c.JoinIntoString(''));
foreach var t in a do
case t of
'0000':Write('0');
'0001':Write('1');
'0010':Write('2');
'0011':Write('3');
'0100':Write('4');
'0101':Write('5');
'0110':Write('6');
'0111':Write('7');
'1000':Write('8');
'1001':Write('9');
'1010':Write('A');
'1011':Write('B');
'1100':Write('C');
'1101':Write('D');
'1110':Write('E');
'1111':Write('F');
end;
Writeln
end.
Пример
> 110101111010101100010101110101101011011011
35EAC575ADB