Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o
… více »Společnost Framework představila nový Framework Laptop 12 s Intel Core Series 3, Thunderbolt 4, Wi-Fi 7, volitelnou čtečkou otisků prstů a podsvícenou klávesnicí s open-source firmwarem ZMK. Objednat lze s předinstalovanou Fedorou 44 KDE Plasma.
Byl vydán Mozilla Firefox 154.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 154 bude brzy k dispozici také na Flathubu a Snapcraftu.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).
Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 10. Přehled novinek v příspěvku na blogu.
Interaktivní editor binárních dat GNU poke byl vydán ve verzi 5.0 (seznam změn).
Byla vydána verze 0.85 telnet a ssh klienta PuTTY (Wikipedie). Řešeno je 5 zranitelností.
Byly publikovány novinky z vývoje GIMPu. Pracuje se na novém formátu souborů. Stávající binární XCF bude nahrazen "zazipovaným XML". XCF zůstane plně podporován pouze pro načítání starých souborů.
Workshop o umělé inteligenci v Dartmouthu proběhl před 70 lety, od 18. června do 17. srpna 1956. Dvouměsíční soustředění 6–11 informatiků, iniciované Johnem McCarthym, položilo základy oboru umělé inteligence.
Po 9 týdnech vývoje od vydání Linuxu 7.1 oznámil Linus Torvalds vydání Linuxu 7.2. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.
Řešení dotazu:
// C++
#include <iostream>
using namespace std;
void solve_recursive(int level, int values[10], bool set[10]) {
if (level == 10) {
// test podmienky
if (values[0]*100000 + values[1]*10000 + values[0]*1000 + values[2]*100 + values[3]*10 + values[4] - (values[5]*1000 + values[6]*100 + values[7]*10 + values[8]) * (100 * values[9] + 10 *values[2] + values[3]) == values[0]*10000 + values[1]*1000 + values[0]*100 + values[2]*10 + values[3]) {
for (int i = 0; i < 10; i++)
cout << (char) ('a' + i) << ":" << values[i] << ", ";
cout << endl;
}
} else {
for (int i = 0; i < 10; i++)
if (!set[i]) {
set[i] = true;
values[level] = i;
solve_recursive(level + 1, values, set);
set[i] = false;
}
}
}
int main() {
int values[10];
// mozno pouzit aj cyklus ;)
bool set[10]={false, false, false, false, false, false, false, false, false, false};
solve_recursive(0, values, set);
return 0;
}
000000 - 0000 * 000 = 00000
#include <iostream>
#include <algorithm>
int main() {
int ints[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int &A = ints[0];
int &B = ints[1];
int &C = ints[2];
int &D = ints[3];
int &E = ints[4];
int &F = ints[5];
int &G = ints[6];
int &H = ints[7];
int &I = ints[8];
int &J = ints[9];
do {
if ((100000*A+10000*B+1000*A+100*C+10*D+E) -
(1000*F+100*G+10*H+I) *
(100*J+10*C+D) ==
(10000*A+1000*B+100*A+10*C+D))
{
std::cout << A << B << A << C << D << E << " - "
<< F << G << H << I << " * "
<< J << C << D << " = "
<< A << B << A << C << D << "\n";
}
} while (std::next_permutation (ints, ints+10));
}
Tiskni
Sdílej: