'use strict';
/**
 * ЦЭ,ЦТ 2025 Физика — Вариант 1 (30 заданий: A1-A10 + B1-B20)
 * Источник: ЦЭ,ЦТ 2025.pdf (Сборники ЦЭ,ЦТ)
 * Задания с рисунком сохранены как PNG
 */
const db = require('../src/db/db');
const PHYS_ID = 4;
const T = {kinem:29,dynam:30,cons:31,mol:32,thermo:33,electro:34,dc:35,magnet:36,emf:37,optics:38,quantum:39,waves:40};
function getTopic(n){const e=db.prepare('SELECT id FROM topics WHERE subject_id=? AND LOWER(name)=LOWER(?)').get(PHYS_ID,n);if(e)return e.id;return Number(db.prepare('INSERT INTO topics (subject_id,name) VALUES (?,?)').run(PHYS_ID,n).lastInsertRowid);}
const Tx={measure:getTopic('Измерительные приборы'),nuclear:getTopic('Ядерная физика'),optica:getTopic('Оптика'),};
const ex=new Set(db.prepare('SELECT text FROM questions WHERE subject_id=4').all().map(q=>q.text.slice(0,80).trim()));
let added=0,skipped=0;
const insQ=db.prepare(`INSERT INTO questions (subject_id,topic_id,text,type,difficulty,year,explanation,correct_text,image,source_type) VALUES (?,?,?,?,?,?,?,?,?,?)`);
const insO=db.prepare(`INSERT INTO options (question_id,text,is_correct,order_index) VALUES (?,?,?,?)`);
function q(tid,text,opts,diff,year,img){
  const key=text.slice(0,80).trim();if(ex.has(key)){skipped++;return;}ex.add(key);
  const r=insQ.run(PHYS_ID,tid,text,'single',diff,year||null,null,null,img||null,'ЦТ');
  const id=r.lastInsertRowid;opts.forEach((o,i)=>insO.run(id,o.t,o.c?1:0,i));added++;
}
function fb(tid,text,ans,diff,year,img){
  const a=String(ans);
  const key=text.slice(0,80).trim();if(ex.has(key)){skipped++;return;}ex.add(key);
  insQ.run(PHYS_ID,tid,text,'fill-blank',diff,year||null,null,a,img||null,'ЦТ');
  added++;
}

const run=db.transaction(()=>{

// ══ ЧАСТЬ A ══════════════════════════════════════════════════

// A1 — равную нулю проекцию на ось Ox имеют векторы [РИСУНОК; ответ: 3 — c̄]
q(T.kinem,`A1. Из векторов, изображённых на рисунке, равную нулю проекцию на ось \\(Ox\\) имеют векторы:\n1) \\(\\vec{a}\\); 2) \\(\\vec{b}\\); 3) \\(\\vec{c}\\); 4) \\(\\vec{d}\\); 5) \\(\\vec{e}\\).`,
[{t:'3',c:true},{t:'1',c:false},{t:'2',c:false},{t:'4',c:false},{t:'5',c:false}],
1,2025,'/img/ct/phys/2025_v1_a1.png');

// A2 — закон изменения координаты x тела по графику (ответ: 3 — x=2-0,5t)
q(T.kinem,`A2. Если график движения тела вдоль оси \\(Ox\\) имеет вид, представленный на рисунке, то координата \\(x\\) тела с течением времени \\(t\\) изменяется по закону:\n1) \\(x=2+0{,}5t\\); 2) \\(x=-2+0{,}5t\\); 3) \\(x=2-0{,}5t\\); 4) \\(x=-2-0{,}5t\\); 5) \\(x=-0{,}5t\\).`,
[{t:'3',c:true},{t:'1',c:false},{t:'2',c:false},{t:'4',c:false},{t:'5',c:false}],
1,2025,'/img/ct/phys/2025_v1_a2.png');

// A3 — график мощности P двигателя грузовика от времени [РИСУНОК; ответ: 4]
q(T.dynam,`A3. Грузовик движется по дороге, профиль которой изображён на рисунке, с постоянной по модулю скоростью. Рисунок, на котором правильно показана зависимость мощности \\(P\\) двигателя грузовика от времени \\(t\\), обозначен цифрой:\n1) 1; 2) 2; 3) 3; 4) 4; 5) 5.`,
[{t:'4',c:true},{t:'1',c:false},{t:'2',c:false},{t:'3',c:false},{t:'5',c:false}],
2,2025,'/img/ct/phys/2025_v1_a3.png');

// A4 — формула для нагревания жидкости Q=mc(t₂-t₁) (ответ: 3)
q(T.thermo,`A4. Для нагревания жидкости массой \\(m\\), удельная теплоёмкость которой \\(c\\), с температуры \\(t_1\\) до температуры \\(t_2\\) потребуется количество теплоты \\(Q\\), которое можно рассчитать по формуле, обозначенной цифрой:\n1) \\(Q=cm(t_1-t_2)\\); 2) \\(Q=\\dfrac{1}{2}mc(t_2-t_1)\\); 3) \\(Q=cm(t_2-t_1)\\); 4) \\(Q=\\dfrac{c}{m}(t_2-t_1)\\); 5) \\(Q=mc\\).`,
[{t:'3',c:true},{t:'1',c:false},{t:'2',c:false},{t:'4',c:false},{t:'5',c:false}],
1,2025);

// A5 — газ в V,T координатах: верное утверждение [РИСУНОК; ответ: 1 — температура возрастает]
q(T.thermo,`A5. На рисунке представлен график перехода идеального газа из состояния 1 в состояние 2 в координатах \\((V,T)\\). Верными утверждениями являются:\n1) температура газа в процессе возрастает;\n2) температура газа в процессе убывает;\n3) давление газа в процессе возрастает;\n4) давление газа в процессе убывает;\n5) показанный процесс — изохорный.`,
[{t:'1',c:true},{t:'2',c:false},{t:'3',c:false},{t:'4',c:false},{t:'5',c:false}],
1,2025,'/img/ct/phys/2025_v1_a5.png');

// A6 — физическая величина в фарадах (ФД) = электроёмкость (ответ: 2)
q(T.electro,`A6. Физической величиной, измеряемой в фарадах (Ф), является:\n1) электрический заряд; 2) электроёмкость; 3) электрический потенциал; 4) электрический ток; 5) электрическое сопротивление.`,
[{t:'2',c:true},{t:'1',c:false},{t:'3',c:false},{t:'4',c:false},{t:'5',c:false}],
1,2025);

// A7 — наибольший ток через резистор в цепи [РИСУНОК; ответ: 2]
q(T.dc,`A7. В электрической цепи, схема которой представлена на рисунке, сопротивления пяти резисторов одинаковы. Наибольший ток проходит через резистор, обозначенный цифрой:\n1) 1; 2) 2; 3) 3; 4) 4; 5) 5.`,
[{t:'2',c:true},{t:'1',c:false},{t:'3',c:false},{t:'4',c:false},{t:'5',c:false}],
2,2025,'/img/ct/phys/2025_v1_a7.png');

// A8 — проводник с током в плоскости xOy, B₁=0, B₂=0 [РИСУНОК; ответ: 1]
q(T.magnet,`A8. Бесконечно длинный прямолинейный проводник с током \\(I\\) расположён в плоскости \\(xOy\\) и создаёт магнитное поле, индукция которого в точках \\(A\\) и \\(M\\) обозначена \\(B_1\\) и \\(B_2\\). Проекции \\(B_{1x},\\,B_{2x}\\) вектора правильно указаны на рисунке:\n1) \\(B_1=0,\\;B_2=0\\); 2) \\(B_1=0,\\;B_2\\neq0\\); 3) \\(B_1\\neq0,\\;B_2=0\\); 4) \\(B_1\\neq0,\\;B_2\\neq0\\).`,
[{t:'1',c:true},{t:'2',c:false},{t:'3',c:false},{t:'4',c:false}],
2,2025,'/img/ct/phys/2025_v1_a8.png');

// A9 — соответствие явлений и приборов: дифракция↔решётка, электризация↔электрометр (ответ: 3 — А1В3)
q(Tx.measure,`A9. Установите соответствие между физическим явлением и прибором, в котором используется или наблюдается это явление. Правильное соответствие обозначено цифрой:\nА) Дифракция. Б) Электролиз. В) Электризация.\n1. Дифракционная решётка.  2. Динамометр.  3. Электрометр.\n1) А3В1; 2) А2В1; 3) А1В3; 4) А1В2; 5) А2В3.`,
[{t:'3',c:true},{t:'1',c:false},{t:'2',c:false},{t:'4',c:false},{t:'5',c:false}],
1,2025);

// A10 — суммарное число нейтронов в 1 г изотопа лития (ответ: 3 — 4,0·10²³)
q(Tx.nuclear,`A10. Суммарное число нейтронов, содержащихся в одном грамме изотопа лития \\({}^9_3\\text{Li}\\), равно:\n1) \\(1{,}8\\cdot10^{23}\\); 2) \\(2{,}7\\cdot10^{23}\\); 3) \\(4{,}0\\cdot10^{23}\\); 4) \\(4{,}7\\cdot10^{23}\\); 5) \\(6{,}1\\cdot10^{23}\\).`,
[{t:'3',c:true},{t:'1',c:false},{t:'2',c:false},{t:'4',c:false},{t:'5',c:false}],
2,2025);

// ══ ЧАСТЬ B ══════════════════════════════════════════════════

// B1 — токарный станок: диаметр -15%, m₁=400г → m₂=(0,85)²×400=289 г [РИСУНОК]
fb(T.dynam,`B1. После обработки на токарном станке однородной цилиндрической заготовки её диаметр уменьшился на \\(k=15{,}0\\%\\). Если начальная масса заготовки была \\(m_1=400\\) г, то после обработки масса \\(m_2\\) заготовки стала равна ___ г.`,
289,1,2025,'/img/ct/phys/2025_v1_b1.png');

// B2 — два катера, v₁=18 км/ч, v₁₂=? [РИСУНОК]
fb(T.kinem,`B2. Два катера движутся по озеру со скоростями \\(\\vec{v}_1\\) и \\(\\vec{v}_2\\) относительно воды (см. рис.). Если модуль скорости первого катера \\(v_1=18\\) км/ч, то модуль скорости \\(v_{12}\\) первого катера относительно второго равен ___ км/ч.`,
30,2,2025,'/img/ct/phys/2025_v1_b2.png');

// B3 — равноускоренное движение, v от пути s, Δt=2,0с, перемещение [РИСУНОК]
fb(T.kinem,`B3. Тело движется равноускоренно вдоль оси \\(Ox\\). На рисунке изображён график зависимости проекции скорости тела от пути \\(s\\), пройденного им с момента начала отсчёта времени. За промежуток времени \\(\\Delta t=2{,}0\\) с от начала отсчёта тело совершило перемещение, модуль которого равен ___ дм.`,
7,2,2025,'/img/ct/phys/2025_v1_b3.png');

// B4 — брусок m=2,0 кг, F₁=2,0Н, μ=0,25; ускорение [РИСУНОК]
fb(T.dynam,`B4. К бруску массой \\(m=2{,}0\\) кг, покоящемуся на горизонтальной поверхности, прикладывают силы \\(F_1\\) и \\(F_2\\), параллельные поверхности (см. рис.). Модуль силы \\(F_1=2{,}0\\) Н. Если коэффициент трения между бруском и поверхностью \\(\\mu=0{,}25\\), то модуль ускорения \\(a\\) бруска равен ___ дм/с².`,
5,2,2025,'/img/ct/phys/2025_v1_b4.png');

// B5 — неупругий удар: m₁=200г, v₀=5,0м/с, m₂=4,8кг → v=0,2 м/с
fb(T.cons,`B5. Тело массой \\(m_1=200\\) г движется прямолинейно по гладкой горизонтальной поверхности со скоростью \\(v_0=5{,}0\\) м/с. Если после столкновения его с покоящимся телом \\(m_2=4{,}8\\) кг оба тела движутся как единое целое, то скорость \\(v\\) тел после столкновения равна ___ м/с.`,
'0.2',2,2025);

// B6 — система невесомых блоков, груз поднимают равномерно [РИСУНОК]
fb(T.dynam,`B6. С помощью системы невесомых блоков равномерно поднимают груз (см. рис.). Если силой трения и массами нитей пренебречь, то модуль силы \\(F\\) равен ___ Н.`,
4,2,2025,'/img/ct/phys/2025_v1_b6.png');

// B7 — пружинный маятник, ν₁=26 Гц, масса +28% → ν₂=23 Гц
fb(T.waves,`B7. Груз пружинного маятника совершает гармонические колебания с частотой \\(\\nu_1=26\\) Гц. Если в этот пружинный маятник поместить другой груз, масса которого на 28% больше массы первоначального груза, то частота \\(\\nu_2\\) колебаний маятника станет равна ___ Гц.`,
23,1,2025);

// B8 — N=3,8·10¹⁹ молекул O₂, M=32г/моль → m=0.002 г
fb(T.mol,`B8. Если в сосуде содержится \\(N=3{,}8\\cdot10^{19}\\) молекул кислорода \\([M=32\\text{ г/моль}]\\), то масса \\(m\\) кислорода равна ___ г.`,
'0.002',1,2025);

// B9 — изобарный нагрев: T₂=140°С, объём ×1,4 → T₁=22°С
fb(T.thermo,`B9. Если при изобарном нагревании идеального газа до температуры \\(T_2=140\\) °С его объём увеличился в \\(k=1{,}4\\) раза, то начальная температура газа была равна ___ °С.`,
22,2,2025);

// B10 — одноатомный газ, состояния 1→2 на p,V диаграмме → ΔU₁₂ [РИСУНОК]
fb(T.thermo,`B10. Идеальный одноатомный газ перевели из состояния 1 в состояние 2 (см. рис.). Приращение внутренней энергии \\(\\Delta U_{12}\\) газа равно ___ кДж.`,
'3.3',3,2025,'/img/ct/phys/2025_v1_b10.png');

// B11 — плавление металла (λ=90 кДж/кг, Q₀=350 Дж/с, Δt=30 мин) → m=7 кг [РИСУНОК]
fb(T.thermo,`B11. На рисунке представлена зависимость температуры \\(t\\) металла \\([\\lambda=90\\text{ кДж/кг}]\\) от времени \\(t\\). Если в процессе плавления металла к нему ежесекундно подводится количество теплоты \\(Q_0=350\\) Дж, то масса \\(m\\) металла равна ___ кг.`,
7,2,2025,'/img/ct/phys/2025_v1_b11.png');

// B12 — цикл идеального газа: Q₁₂=720 Дж, Q₂₃=? [РИСУНОК]
fb(T.thermo,`B12. С идеальным одноатомным газом осуществляется циклический процесс в координатах (p,V). Процесс 3→1 изотермический. Если газу на участке 1→2 подвели \\(Q_{12}=720\\) Дж, то на участке 2→3 газ отдал количество теплоты \\(|Q_{23}|\\) равное ___ Дж.`,
480,3,2025,'/img/ct/phys/2025_v1_b12.png');

// B13 — два проводящих шара (r₁=1,5r₂), q₁=10нКл → после контакта q₂'=8 нКл
fb(T.electro,`B13. После соприкосновения двух проводящих шариков с радиусами \\(r_1:r_2=1{,}5:1\\). Если до соприкосновения заряд первого шарика \\(q_1=q_2=10\\) нКл, то после соприкосновения заряд второго шарика равен ___ нКл.`,
8,2,2025);

// B14 — электростатическое поле, два одинаковых заряда, потенциал в точке A=87В, B=? [РИСУНОК]
fb(T.electro,`B14. Электростатическое поле в вакууме создано двумя одинаковыми точечными зарядами (см. рис.). В точке A потенциал поля \\(\\varphi_A=87\\) В. Потенциал поля \\(\\varphi_B\\) в точке B равен ___ В.`,
114,3,2025,'/img/ct/phys/2025_v1_b14.png');

// B15 — ЭДС источника: A=420 Дж, q=20 Кл → ε=21 В
fb(T.dc,`B15. Если сторонние силы при перемещении заряда \\(q=20\\) Кл внутри источника тока совершают работу \\(A_{12}=420\\) Дж, то ЭДС \\(\\varepsilon\\) источника тока равна ___ В.`,
21,1,2025);

// B16 — цепь с одинаковыми резисторами, вольтметр U₀=16В, напряжение источника? [РИСУНОК]
fb(T.dc,`B16. В электрической цепи, схема которой изображена на рисунке, сопротивления всех резисторов одинаковы. Если идеальный вольтметр показывает напряжение \\(U_0=16\\) В, то напряжение \\(U\\) на зажимах источника тока равно ___ В.`,
24,2,2025,'/img/ct/phys/2025_v1_b16.png');

// B17 — металлический проводник, S=1,0мм², ρ=28нОм·м, I=Bt, B=0,2А·с⁻¹/², Δt=8с → Q [РИСУНОК]
fb(T.dc,`B17. В металлическом проводнике (\\(\\rho=28\\) нОм·м) площадь поперечного сечения \\(S=1{,}0\\) мм², ток нарастает по закону \\(I=B\\sqrt{t}\\), где \\(B=2{,}0\\cdot10^{-1}\\) А·с\\(^{-1/2}\\). За промежуток времени \\(\\Delta t=8{,}0\\) с количество теплоты, выделяемой в проводнике, равно ___ мДж.`,
36,3,2025,'/img/ct/phys/2025_v1_b17.png');

// B18 — прямоугольный витой провод S=220см², R=5,0Ом, B(t)=B₀+at, a=7,5Тл/с, Δt=0,25с → Q=1,4 мДж
fb(T.emf,`B18. Прямоугольный витой провод площадью \\(S=220\\) см² с сопротивлением \\(R=5{,}0\\) Ом находится в однородном магнитном поле. Если индукция поля меняется по закону \\(B(t)=B_0+at\\), где \\(a=7{,}5\\) Тл/с, то количество теплоты, выделяемой в проводнике за \\(\\Delta t=0{,}25\\) с, равно ___ мДж.`,
'1.4',2,2025);

// B19 — плот квадратной формы n=4/3, h=6,6м → сторона a=15м [РИСУНОК]
fb(T.optics,`B19. Непрозрачный тонкий плот, имеющий квадратную форму, плавает на поверхности воды (\\(n=\\tfrac{4}{3}\\)). На вертикали, проходящей через центр плота, на глубине \\(h=6{,}6\\) м находится точечный источник света (см. рис.). Если ни один световой луч источника не выходит из воды, минимальная длина \\(a\\) стороны плота равна ___ м.`,
15,2,2025,'/img/ct/phys/2025_v1_b19.png');

// B20 — АЭС η=27%, m(U-235)=540кг, E₀=200МэВ → P=379МВт
fb(Tx.nuclear,`B20. Атомная электростанция (КПД \\(\\eta=27{,}0\\%\\)) работает на изотопе урана \\({}^{235}\\text{U}\\) массой \\(m=540\\) кг. Если при делении одного ядра урана выделяется энергия \\(E_0=200\\) МэВ, то мощность электростанции (за 365 суток работы) равна ___ МВт.`,
379,2,2025);

});
run();
console.log(`ЦЭ,ЦТ 2025 Физика V1: добавлено ${added}, пропущено ${skipped}`);
