首页 > 其他分享 >wintools premium 24.10.1 注册分析

wintools premium 24.10.1 注册分析

时间:2024-10-05 20:34:14浏览次数:1  
标签:code premium sub hDlg psz1 24.10 wintools GetDlgItem mbp

wintools premium 24.10.1

目录

win32 程序,程序注册逻辑简单,关注窗口事件、控件id可快速定位到关键逻辑。

NAGSCREEN_proc_472350

INT_PTR __thiscall NAGSCREEN_proc_472350(void *this, HWND hDlg, UINT a3, WPARAM id, LPARAM a5)
{
  // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND]

  if ( a3 == 272 )
  {
    memset(String, 0, 520);
    v17 = GetDlgItem;
    DlgItem = GetDlgItem(hDlg, 10006);
    GetWindowTextW(DlgItem, String, 260);
    WritePrivateProfileStringW(L"o", L"c", String, &FileName);
    i_time = _time64(0);
    switch ( Edition_4CC1D8 )
    {
      case 100:
        ImageW = LoadImageW(hInst, (LPCWSTR)0x4F21, 0, 79, 264, 0x1000u);
        break;

      case 200:
        ImageW = LoadImageW(hInst, (LPCWSTR)0x4F22, 0, 79, 264, 0x1000u);
        break;

      case 300:
        ImageW = LoadImageW(hInst, (LPCWSTR)0x4F23, 0, 79, 264, 0x1000u);
        break;

      default:
LABEL_38:
        PrivateProfileIntW = GetPrivateProfileIntW(L"OPTIONS", L"Transparent", 5, &FileName);
        sub_480B00(hDlg, 100 - PrivateProfileIntW);
        psz1 = 0;
        memset(v65, 0, sizeof(v65));
        if ( !SHGetSpecialFolderLocation(0, 26, &ppidl) )
        {
          SHGetPathFromIDListW(ppidl, &psz1);
          StrCatW(&psz1, L"\\WinTools");
          CreateDirectoryW(&psz1, 0);
        }

        StrCatW(&psz1, &xx_dll_4E4F50);
        memset(&mbp, 0, sizeof(mbp));
        memset(data_str, 0, sizeof(data_str));
        GetPrivateProfileStringW(L"OPTIONS", L"Data", &pszFaceName, (LPWSTR)&mbp, 0x14u, &psz1);
        if ( !LOWORD(mbp.cbSize) )
        {
          if ( GetPrivateProfileIntW(L"OPTIONS", L"Data", 0, &FileName) )
          {
            set_reg_4722D0(v22, &word_4B32E4);
          }
          else
          {
            Buffer = 0;
            v60 = 0;
            v61 = 0;
            v58 = 0i64;
            v59 = 0i64;
            swprintf_s(&Buffer, 0x14u, L"%I64i", i_time);
            WritePrivateProfileStringW(L"OPTIONS", L"Data", &Buffer, &psz1);
            WritePrivateProfileStringW(L"OPTIONS", L"Data", &Buffer, &FileName);
          }
        }

        GetPrivateProfileStringW(L"OPTIONS", L"Data", &pszFaceName, data_str, 0x14u, &FileName);
        GetPrivateProfileStringW(L"OPTIONS", L"Data", &pszFaceName, (LPWSTR)&mbp, 0x14u, &psz1);
        if ( StrCmpW(data_str, (PCWSTR)&mbp) )
          set_reg_4722D0(v23, &word_4B32E4);

        *(_QWORD *)&qword_4CB9B8 = (i_time - (unsigned int)toint_35((int)data_str)) / 86400;
        v24 = GetDlgItem(hDlg, 19989);
        SendMessageW(v24, 0x402u, 0, 0);
        v25 = GetDlgItem(hDlg, 19989);
        SendMessageW(v25, 0x401u, 0, 1376256);
        v42 = qword_4CB9B8;
        v26 = GetDlgItem(hDlg, 19989);
        SendMessageW(v26, 0x402u, v42, 0);
        v27 = sub_478640(L"NAG", L"0");
        SetWindowTextW(hDlg, v27);
        v45 = sub_478640(L"NAG", &word_4B32E4);
        v28 = GetDlgItem(hDlg, 19991);
        SetWindowTextW(v28, v45);
        v46 = sub_478640(L"NAG", L"2");
        v29 = GetDlgItem(hDlg, 19990);
        SetWindowTextW(v29, v46);
        v47 = sub_478640(L"NAG", L"3");
        v30 = GetDlgItem(hDlg, 19992);
        SetWindowTextW(v30, v47);
        v48 = sub_478640(L"NAG", L"4");
        v31 = GetDlgItem(hDlg, 10235);
        SetWindowTextW(v31, v48);
        v49 = sub_478640(L"NAG", &word_4B32CC);
        v32 = GetDlgItem(hDlg, 19994);
        SetWindowTextW(v32, v49);
        v50 = sub_478640(L"NAG", L"6");
        v33 = GetDlgItem(hDlg, 19995);
        SetWindowTextW(v33, v50);
        memset(code, 0, 300);
        v34 = *(&qword_4CB9B8 + 1);
        if ( (*(&qword_4CB9B8 + 1) & 0x80000000) != 0 )
        {
          v35 = qword_4CB9B8;
        }

        else if ( (int)*(&qword_4CB9B8 + 1) > 0 || (v35 = qword_4CB9B8, qword_4CB9B8 > 0x15) )
        {
          v35 = 21;
          v34 = 0;
          *(_QWORD *)&qword_4CB9B8 = 21i64;
        }

        v51 = v34;
        v43 = v35;
        v36 = sub_478640(L"NAG", L"7");
        swprintf_s(code, 0x96u, v36, v43, v51);
        v37 = GetDlgItem(hDlg, 10005);
        SetWindowTextW(v37, code);
        memset(v66, 0, 1000);
        if ( dword_4E4F40 )
        {
          dword_4E4F40 = 0;
          v38 = L"9";
        }
        else
        {
          v38 = L"8";
        }

        v39 = sub_478640(L"NAG", v38);
        StrCpyW(v66, v39);
        v40 = 0;
        if ( lstrlenW(v66) > 0 )
        {
          do
          {
            if ( v66[v40] == 64 )
              v66[v40] = 10;

            ++v40;
          }
          while ( v40 < lstrlenW(v66) );

          v17 = GetDlgItem;
        }

        v41 = v17(hDlg, 19998);
        SetWindowTextW(v41, v66);
        return 1;
    }

    v44 = (LPARAM)ImageW;
    v20 = GetDlgItem(hDlg, 19999);
    SendMessageW(v20, 0x172u, 0, v44);
    goto LABEL_38;
  }

  if ( a3 != WM_COMMAND )
    return 0;

  if ( (unsigned __int16)id > 19991u )
  {
    if ( (unsigned __int16)id == 19992 )
      HtmlHelpW(hDlg, &pszFile, 0xFu, 1u);
  }
  else
  {
    switch ( (unsigned __int16)id )
    {
      case 19991u:
        HtmlHelpW(hDlg, &pszFile, 0xFu, 0x13u);
        break;

      case 2u:
        EndDialog(hDlg, 1);
        break;

      case 19990u:
        ArgList = 0;
        if ( *(__int64 *)&qword_4CB9B8 > 20 )
        {
          ArgList = 1;
          set_reg_4722D0((int)this, &word_4B32E4);
        }

        memset(code, 0, sizeof(code));
        v6 = GetDlgItem(hDlg, 10006);           // code
        GetWindowTextW(v6, code, 260);
        v7 = (void (__stdcall *)(HWND, INT_PTR))EndDialog;
        if ( code[0] )
        {
          if ( lstrlenW(code) <= 20 )
            goto LABEL_22;

          v8 = -1;
          code_len = lstrlenW(code);
          //内存布局
          //  -000013E0 data_str        dw 20 dup(?)
		  //  -000013B8 code            dw 260 dup(?)
          // len(code)-20d +4
          crc32 = &data_str[code_len + 4];      // data_str 0x14  
          for ( i = lstrlenW(&data_str[code_len + 4]);
                i > 0;
                v8 = CRC32_table_4BB070[(unsigned __int8)(v8 ^ v11)] ^ (v8 >> 8) )
          {
            v11 = *crc32++;
            --i;
          }

          psz1 = 0;
          memset(v65, 0, sizeof(v65));
          StrCpyW(&psz1, code);
          if ( (unsigned int)(code_len * 2 - 0x20) >= 0x208 )
          {
            sub_48EBA6((int)crc32, (int)hDlg, v8);
            JUMPOUT(0x472BE4);
          }

          *(WCHAR *)((char *)&psz1 + code_len * 2 - 0x20) = 0;
          if ( ~v8 == (unsigned int)_wtoi64(&psz1) )
          {
            v12 = code;
            if ( code[0] )
            {
              v13 = code[0];
              do
              {
                *v12++ = v13 ^ 1;
                v13 = *v12;
              }
              while ( *v12 );
            }

            WritePrivateProfileStringW(L"o", L"c", code, &FileName);
            v7 = (void (__stdcall *)(HWND, INT_PTR))EndDialog;
            EndDialog(hDlg, 0);
            if ( sub_472210() )
            {
              set_reg_4722D0(v14, L"0");
              check_472BF0();//check2
            }

            v15 = sub_478640(L"NAG", L"10");
            StrCpyW(String, v15);
            v16 = sub_478640(L"NAG", L"11");
            StrCpyW(v66, v16);
            mbp.hInstance = hInst;
            mbp.hwndOwner = ::hDlg;
            mbp.lpszCaption = v66;
            mbp.lpszText = String;
            mbp.cbSize = 40;
            mbp.dwStyle = 262272;
            mbp.lpszIcon = (LPCWSTR)107;
            MessageBoxIndirectW(&mbp);
          }
          else
          {
LABEL_22:
            v7 = (void (__stdcall *)(HWND, INT_PTR))EndDialog;
          }
        }

        if ( sub_472210() || ArgList )
          v7(hDlg, 1);
        else
          v7(hDlg, 0);

        break;
    }
  }

  return 1;
}

check_472BF0

int check_472BF0()
{
  // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND]

  j___free_base((void *)lpString);
  lpString = (LPCWSTR)calloc(0x32u, 2u);
  result = GetPrivateProfileStringW(L"o", L"c", &pszFaceName, (LPWSTR)lpString, 0x32u, &FileName);
  if ( result )
  {
    result = lstrlenW(lpString);
    if ( result >= 20 )
    {
      v1 = lstrlenW(lpString);
      // Professional
      qmemcpy(
        psz1,
        L"UYFA8Y5FMG9A84Y57Y4O789YGURIYHKKJGTIX48E57YX47JY5IXK734YJSYH4G78TH47Y7J84SY5S8IYW234I87YS28IJY78YS1J7YJ178YTISJ7"
         "YI81YJ87TY187YJ17YTI8S7TY3JI78Y4TK78TY7YH1J7YHF714YK74Y174YHYUHTR5FG1E5D5413ES154GD541DTF56D3RG543F1G56FRG651F2"
         "3T1GD63TG1F543DE5475F73JDJK846T1TDF34515641D6541DG546RD1654EW65RF6516D4FYJ47YI847J1Y8IY41JK78Y4FK871YJ8I7Y3DIK8"
         "173YJ871IDY478TYG1J7Y48IK7YJDK47YJ71Y187YJ418Y4J8I7Y1GJ7Y47ETM85LKA84357WF74IK5G7W948573FLKVE51IUM18U18Y389Y1UI"
         "Y187Y871Y71R1FR1D56G1DRT65RD363D787138IDH18I3YJ813YJD781Y3I87Y1J7DY31K7438AT83476KI873YD18I74Y781TY78TYJ78TY174"
         "Y178YJ1Y487YK17YJGFHU4JHDK4GFNH481JK7FNY4Y17NY174FYN71NFY47814YJD17Y4JF17YR7Y4H78DYH81IYG1H74YIJD7Y431I87JYD48I"
         "YJ14Y7IJG17DY4781Y4J87YI81JDFY4178YJ47J1Y47J1HY478YHT784YTJ1874HYG14J7YD1J487YF18748MFK34574S42YH871GYJ4Y1JI87Y"
         "4FJ817Y4GJ817J4Y1GI8J74Y781YTJ4",
        0x654u);
      memset(&psz1[810], 0, 0x1ACu);
      StrCpyW(&word_4E4F98, L"prowt");
      StrCpyW(&xx_dll_4E4F50, L"\\prowt.dll");
      if ( Edition_4CC1D8 == 100 )
      {
        // Classic
        StrCpyW(&word_4E4F98, L"clscwt");
        StrCpyW(&xx_dll_4E4F50, L"\\clscwt.dll");
        StrCpyW(
          psz1,
          L"M1890U198Y171917809179H1789J1719HDYJF7Y1FHJYF173Y78RY783RY18YHR871YR3H871YJF3YF178H3YF718JFY3178SYJHY3FH1J7YG7"
           "YG7JY17G3YN178Y3G7Y178T3YH178YR78Y1J87R3HY18Y3J71YI387TYH1738YJD1H7Y3RJ871Y38RYJF7HYI3TGH7YI81YH87YH318Y3J71Y"
           "73HY17I3Y8YE7YE7HY1D873YJFTA87K437783217Y474YH73Y178YTH73Y78JRYH47814J71YJ784Y1J874FH7814J7HY64T87YJ87Y1871Y3"
           "87YJF87Y781Y87J3YT781YH817Y3TH781Y38716Y781YTJ8H3Y87JYR3178Y3TH87J48R7JF47H387JDKUFR734HW25TPYN5373178YG178YG"
           "J8Y71487YHT7Y8F1JU7YDJ87Y487IYH478Y178YD748Y178Y187RY18Y781Y7Y178TY48J1FUY4NF743847583F187YH781YH471Y78YJ7DEY"
           "4781YE87Y4R87Y1TGJ87Y4H871Y4TJ7841YI81Y74G71Y1D7UY4178Y4871HG7Y78FY4871Y4JG71Y4I871Y8RY78Y6H1T73Y8JT73Y8J71YT"
           "31J7Y87YD73Y178Y3781Y3H781YT3781YH6T78YT78Y784JD45F78748F3Y17YU47Y187Y41784YH17YT47Y4T71Y874Y17HY47H1YJ4D7Y17"
           "YH71Y4781Y4T87H1Y7Y1784DHY17Y4J17Y471Y578Y");
      }

      else if ( Edition_4CC1D8 == 300 )
      {
        // Premium
        StrCpyW(&word_4E4F98, L"remwt");
        StrCpyW(&xx_dll_4E4F50, L"\\remwt.dll");
        StrCpyW(
          psz1,
          L"N7W934GJ2746J9827456T8O97YH5I4YGWTJ5DRYHTNU4Y56N78Y8Y34O879Y4O879YN4587Y3N9O73N75Y3UY435UYH345FTCX5TREX4TRE35X"
           "3TREX5T435XDCGTB34XV5TC34BT5RDXC4TB5FCT34534YUI5YM34UY5MKI34NY5KI34NUY5K34UMY5NI8374JY5UI4353F45CT3C54T3CT53C"
           "4T5XC3TB45FC34BGF5CB34RB5CT3G4BF5T3FT54V345KHJMI3YUMYI346HIM3Y48IY58H734U53J4C5TF34T5T34JH5T3DF4JT534JH5T34D5"
           "CJT34FD5T34CD5TXC34TFC5D34TG5CVTG3454KJHM34N5YHLIK3U4MYN5IUY43MI5Y45NU443JH4KNJH3Y5NUY4HK5IUNY4H32MKLI4HLM2JH"
           "34L2M3UH4N2L3KYN5H43RKUS45OG434S39472J34FHSF38274K28394FHYNHLIU4Y5LIU3Y4ML5I8Y73L4895YJL89347Y6O8Y3JIK546UHUK"
           "45YJKH6U8Y4JIHKUTY56I8JK4H7Y5678YGJ4576YH487IJ5H6Y4875YH6I45YJ684YH5KI876YF4K5J7H6YF4H75Y6HK457Y6TK54JY6TKH4Y"
           "56JTHY456HJTK4756IJ78T4658IKJTY45IH67Y4J856YG8I4H7Y564JT56HI847YH6ITK4Y5KIJ6H7G46YJG4I857H6YGJ4756YHK4IJT6HYT"
           "475J6H4Y757674UJ5Y6T84Y75K6JT4HY567HJ4");
      }

      v2 = psz1;
      if ( psz1[0] )
      {
        v3 = psz1[0];
        do
        {
          *v2++ = v3 ^ 1;
          v3 = *v2;
        }
        while ( *v2 );
      }

      if ( StrStrW(psz1, &lpString[v1 - 12]) )
      {
        if ( !SHGetSpecialFolderLocation(0, 26, &ppidl) )
        {
          SHGetPathFromIDListW(ppidl, pszPath);
          StrCatW(pszPath, L"\\WinTools");
          CreateDirectoryW(pszPath, 0);
        }

        StrCatW(pszPath, &xx_dll_4E4F50);
        DeleteFileW(pszPath);
        v5 = L"0";
      }
      else
      {
        result = sub_472210();
        if ( result )
        {
          dword_4E4F34 = 1;
          dword_4E4F38 = 1;
          dword_4E4F3C = 1;
          dword_4E4F44 = 1;
          dword_4E4F48 = 1;
          dword_4E4F30 = 1;
          return result;
        }

        v5 = &word_4B32E4;
      }

      return set_reg_4722D0(v4, v5);
    }
  }

  return result;
}

py

ss

'''
premium
7876632734272G7VYMOX87YVJ
3005207633516OX87YVJMXC7Y
1629819872181497JYDFKJ7YJE
prof
28583290066947JGKWE49J57GJ
16967628558681F9VSDF78SWT7
6003987853474HT8IJR6GY76R
19339473533736W8E7RT98ST89
'''
import binascii
import random


# 100d
Classic='M1890U198Y171917809179H1789J1719HDYJF7Y1FHJYF173Y78RY783RY18YHR871YR3H871YJF3YF178H3YF718JFY3178SYJHY3FH1J7YG7YG7JY17G3YN178Y3G7Y178T3YH178YR78Y1J87R3HY18Y3J71YI387TYH1738YJD1H7Y3RJ871Y38RYJF7HYI3TGH7YI81YH87YH318Y3J71Y73HY17I3Y8YE7YE7HY1D873YJFTA87K437783217Y474YH73Y178YTH73Y78JRYH47814J71YJ784Y1J874FH7814J7HY64T87YJ87Y1871Y387YJF87Y781Y87J3YT781YH817Y3TH781Y38716Y781YTJ8H3Y87JYR3178Y3TH87J48R7JF47H387JDKUFR734HW25TPYN5373178YG178YGJ8Y71487YHT7Y8F1JU7YDJ87Y487IYH478Y178YD748Y178Y187RY18Y781Y7Y178TY48J1FUY4NF743847583F187YH781YH471Y78YJ7DEY4781YE87Y4R87Y1TGJ87Y4H871Y4TJ7841YI81Y74G71Y1D7UY4178Y4871HG7Y78FY4871Y4JG71Y4I871Y8RY78Y6H1T73Y8JT73Y8J71YT31J7Y87YD73Y178Y3781Y3H781YT3781YH6T78YT78Y784JD45F78748F3Y17YU47Y187Y41784YH17YT47Y4T71Y874Y17HY47H1YJ4D7Y17YH71Y4781Y4T87H1Y7Y1784DHY17Y4J17Y471Y578Y'

# 200d
Professional='UYFA8Y5FMG9A84Y57Y4O789YGURIYHKKJGTIX48E57YX47JY5IXK734YJSYH4G78TH47Y7J84SY5S8IYW234I87YS28IJY78YS1J7YJ178YTISJ7YI81YJ87TY187YJ17YTI8S7TY3JI78Y4TK78TY7YH1J7YHF714YK74Y174YHYUHTR5FG1E5D5413ES154GD541DTF56D3RG543F1G56FRG651F23T1GD63TG1F543DE5475F73JDJK846T1TDF34515641D6541DG546RD1654EW65RF6516D4FYJ47YI847J1Y8IY41JK78Y4FK871YJ8I7Y3DIK8173YJ871IDY478TYG1J7Y48IK7YJDK47YJ71Y187YJ418Y4J8I7Y1GJ7Y47ETM85LKA84357WF74IK5G7W948573FLKVE51IUM18U18Y389Y1UIY187Y871Y71R1FR1D56G1DRT65RD363D787138IDH18I3YJ813YJD781Y3I87Y1J7DY31K7438AT83476KI873YD18I74Y781TY78TYJ78TY174Y178YJ1Y487YK17YJGFHU4JHDK4GFNH481JK7FNY4Y17NY174FYN71NFY47814YJD17Y4JF17YR7Y4H78DYH81IYG1H74YIJD7Y431I87JYD48IYJ14Y7IJG17DY4781Y4J87YI81JDFY4178YJ47J1Y47J1HY478YHT784YTJ1874HYG14J7YD1J487YF18748MFK34574S42YH871GYJ4Y1JI87Y4FJ817Y4GJ817J4Y1GI8J74Y781YTJ4'

# 300d
Premium='N7W934GJ2746J9827456T8O97YH5I4YGWTJ5DRYHTNU4Y56N78Y8Y34O879Y4O879YN4587Y3N9O73N75Y3UY435UYH345FTCX5TREX4TRE35X3TREX5T435XDCGTB34XV5TC34BT5RDXC4TB5FCT34534YUI5YM34UY5MKI34NY5KI34NUY5K34UMY5NI8374JY5UI4353F45CT3C54T3CT53C4T5XC3TB45FC34BGF5CB34RB5CT3G4BF5T3FT54V345KHJMI3YUMYI346HIM3Y48IY58H734U53J4C5TF34T5T34JH5T3DF4JT534JH5T34D5CJT34FD5T34CD5TXC34TFC5D34TG5CVTG3454KJHM34N5YHLIK3U4MYN5IUY43MI5Y45NU443JH4KNJH3Y5NUY4HK5IUNY4H32MKLI4HLM2JH34L2M3UH4N2L3KYN5H43RKUS45OG434S39472J34FHSF38274K28394FHYNHLIU4Y5LIU3Y4ML5I8Y73L4895YJL89347Y6O8Y3JIK546UHUK45YJKH6U8Y4JIHKUTY56I8JK4H7Y5678YGJ4576YH487IJ5H6Y4875YH6I45YJ684YH5KI876YF4K5J7H6YF4H75Y6HK457Y6TK54JY6TKH4Y56JTHY456HJTK4756IJ78T4658IKJTY45IH67Y4J856YG8I4H7Y564JT56HI847YH6ITK4Y5KIJ6H7G46YJG4I857H6YGJ4756YHK4IJT6HYT475J6H4Y757674UJ5Y6T84Y75K6JT4HY567HJ4'


def generate(Edition:str=Premium):
    n=random.randint(0,len(Edition)-16)
    t_code=Edition[n:n+16]
    i_crc=binascii.crc32(t_code.encode(),0)
    code=str(i_crc)+t_code
    # print(code)
    return code


def check(x:bytes):
    # x=b'7876632734272G7VYMOX87YVJ'
    # x=b'1629819872181497JYDFKJ7YJE'
    n=len(x)-16
    # print(n)
    y=int(x[:n])
    print('code crc32:',y,y.to_bytes(4,'little').hex())
    ret=binascii.crc32(x[n:],0)
    print('calc crc32:',ret,ret.to_bytes(4,'little').hex())
    print('result:',y==ret)
    


if __name__=="__main__":
    x=generate()
    print(x)
    # check(x.encode())

ps

image-20241005195456795

image-20241005201825048

标签:code,premium,sub,hDlg,psz1,24.10,wintools,GetDlgItem,mbp
From: https://www.cnblogs.com/DirWang/p/18448439

相关文章

  • 团队训练记录2024.10.5
    这次double精度上卡了,赛时和学校强队差两题题目链接:https://codeforces.com/gym/104023/problemA.Dunai队友写的,答案在总冠军位人数和位置上冠军加非冠军人数最小取min?#include<bits/stdc++.h>#definetest(i)cout<<#i<<""<<i<<""<<endl;#defin......
  • 2024.10.1 近期练习
    CF1993F2Dyn-scriptedRobot(HardVersion)这个题非常的一眼,首先翻转路径的操作可以转化为翻转矩形。也就是,如果触碰了边界不改变行走的路径,而是继续走下去,只不过对应的位置需要对称回去。那么,计算走到\((0,0)\)的次数,也就是在反转后的坐标系里的\((2k_1w,2k_2h)\)的位置......
  • 2024.10.5 LGJ Round
    A给定\(n\)个区间,你要选出最多区间对数,使得每一对的区间都不交。\(n\le4e5\)。反悔贪心,我们将所有区间按\(l_i\)从小到大排序,一个一个加入,加入的时候有两种情况。1.之前的区间中存在未匹配的区间,且可以跟当前区间匹配。我们随便选择一个区间跟当前区间匹配即可。2.找不到......
  • 算法练习记录(24.10.5)
    1.B.BrightnessBegins思路要求最后的灯泡打开的数量,由于一开始灯泡是打开的,如果最后还需要打开,那么操作数量一定是偶数,移目至操作前提,需要灯泡的序号能整除\(x\),由于遍历1~x,推出最后灯泡\(i\)亮的条件是:\(1~i\)中有偶数个\(i\)的因数,即\(i\)有偶数个因数,反之即有奇数个......
  • 2024.10.5 LGJ Round
    A给定\(n\)个区间,你要选出最多区间对数,使得每一对的区间都不交。\(n\le4e5\)。反悔贪心,我们将所有区间按\(l_i\)从小到大排序,一个一个加入,加入的时候有两种情况。1.之前的区间中存在未匹配的区间,且可以跟当前区间匹配。我们随便选择一个区间跟当前区间匹配即可。2.找不到......
  • 2024.10.4(周五)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>工资核算信息</title><style>/*整体页面布局和样式*/......
  • 2024.10.7(周一)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>车间班组</title><style>/*整体页面布局和样式*/......
  • 《代码大全》阅读笔记1(2024.10.4)
    第一章:引言软件构建的艺术:介绍了软件开发的复杂性,以及编写高质量代码的重要性。强调了良好的编码习惯不仅能提高代码的可读性和可维护性,也能降低后期的开发成本。第二章:软件构建的哲学质量的重要性:讨论了软件质量的定义,强调高质量软件不仅包括功能的正确性,还包括可维护性、......
  • 2024.10.2(周三)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>生产工序信息</title><style>/*整体页面布局和样式*/......
  • 2024.10.1(周二)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>生产制令</title><style>/*整体页面布局和样式*/......