首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Python-VBA编程500例-008(入门级)

  • 25-03-03 04:43
  • 4363
  • 6211
blog.csdn.net

目录

1、勒索信:

1-1、Python:

1-2、VBA:

2、相关文章:

Python算法之旅:http://iyenn.com/rec/1699032.html?spm=1001.2014.3001.5502 

个人主页:非风V非雨-CSDN博客

欢迎志同道合者一起交流学习,我的QQ:94509325/微信号

        勒索信算法(Ransom Note Algorithm)是指用于生成勒索信的一种算法。勒索信是指黑客或者恶意软件通过电子邮件或其他方式向受害者发送的一种威胁信件,要求受害者支付一定金额的赎金以解锁或恢复被攻击的数据或系统。

具体的勒索信算法可以有多种实现方式,以下是一种常见的勒索信算法的简单介绍:

1、选择目标:黑客首先选择目标受害者,通常是具有一定财务实力或者重要数据的个人、组织或企业。

2、加密文件:黑客使用加密算法对受害者的文件进行加密,使其无法被正常访问。常见的加密算法包括AES、RSA等。

3、发送勒索信:黑客通过电子邮件或其他方式向受害者发送勒索信,其中包含以下内容:

3-1、勒索金额:黑客要求受害者支付一定金额的比特币或其他加密货币作为赎金。

3-2、支付方式:黑客指定受害者应该使用哪种方式进行支付,并提供相应的支付地址或账户信息。

3-3、威胁与警告:勒索信通常包含对受害者的威胁和警告,例如如果不支付赎金,文件将永久丢失或公开敏感信息等。

4、解密与恢复:如果受害者支付了赎金,黑客会提供解密密钥或方法,使受害者能够解密被加密的文件并恢复正常访问。

        需要注意的是,勒索信算法是一种非法行为,严重侵犯了个人隐私和数据安全。如果遇到勒索信,建议立即报警并寻求专业的网络安全机构或专家的帮助。

1、勒索信:
1-1、Python:
  1. # 1.问题描述:
  2. # 给定一个表示勒索信内容的字符串和另一个表示杂志内容字符串,写一个方法判断能否通过剪切下杂志中的(部分)内容构造出一封勒索信,若可以,则返回True;反之,则返回False.
  3. # 注意:杂志中字符串的每一个字符仅能在勒索信中使用一次.
  4. # 2.问题示例:
  5. # 输入ransomNote = "wond",magazine = "wonderful",输出True,即实现勒索信的内容从杂志内容剪辑而来.
  6. # 3.代码实现:
  7. class Solution:
  8. # 参数ransomNote: 字符串
  9. # 参数magazine: 字符串
  10. # 返回值: 布尔类型
  11. def ransomLetter(self, ransomNote, magazine):
  12. arr = [0] * 26
  13. for c in magazine:
  14. arr[ord(c) - ord('a')] += 1
  15. for c in ransomNote:
  16. arr[ord(c) - ord('a')] -= 1
  17. if arr[ord(c) - ord('a')] < 0:
  18. return False
  19. return True
  20. # 主函数
  21. if __name__ == '__main__':
  22. solution = Solution()
  23. ransomNote = "wond"
  24. magazine = "wonderful"
  25. print("输入勒索信:", ransomNote)
  26. print("输入杂志内容:", magazine)
  27. print("输出:", solution.ransomLetter(ransomNote, magazine))
  28. # 4.运行结果:
  29. # 输入勒索信: wond
  30. # 输入杂志内容: wonderful
  31. # 输出: True
1-2、VBA:
  1. Rem 自定义函数,功能:勒索信
  2. Function RansomLetter(ransomNote As String, magazine As String) As Boolean
  3. Dim arr(1 To 26) As Integer '字母为26个
  4. Dim i As Integer
  5. Dim c As String
  6. '初始化数组,且每个以0占位
  7. For i = 1 To 26
  8. arr(i) = 0
  9. Next i
  10. '遍历magazine字符串,并统计每个字符出现的次数
  11. For i = 1 To Len(magazine)
  12. c = mid(magazine, i, 1)
  13. arr(Asc(c) - Asc("a") + 1) = arr(Asc(c) - Asc("a") + 1) + 1
  14. Next i
  15. '遍历ransomNote字符串,并减去字符出现的次数
  16. For i = 1 To Len(ransomNote)
  17. c = mid(ransomNote, i, 1)
  18. arr(Asc(c) - Asc("a") + 1) = arr(Asc(c) - Asc("a") + 1) - 1
  19. '如果字符出现次数小于0,则返回False
  20. If arr(Asc(c) - Asc("a") + 1) < 0 Then
  21. RansomLetter = False
  22. Exit Function
  23. End If
  24. Next i
  25. '如果所有字符都满足条件,则返回 True
  26. RansomLetter = True
  27. End Function
  28. Rem 执行过程,功能:调用自定义函数RansomLetter,并在立即窗口输出结果
  29. Sub TestRun()
  30. Dim ransomNote As String
  31. Dim magazine As String
  32. Dim result As Boolean
  33. ransomNote = "wond"
  34. magazine = "wonderful"
  35. Debug.Print "输入勒索信为:" & ransomNote
  36. Debug.Print "输入杂志内容:" & magazine
  37. result = RansomLetter(ransomNote, magazine)
  38. Debug.Print "输出为:" & CStr(result)
  39. End Sub
  40. '输入勒索信为: wond
  41. '输入杂志内容: wonderful
  42. '输出为:True

注意:1-2中的代码需粘贴到你的VBA编辑器中,按F5执行TestRun程序,以弹窗口形式输出结果。

2、相关文章:

2-1、Python-VBA编程500例-006(入门级)

2-2、Python-VBA编程500例-007(入门级)

2-3、Python-VBA编程500例-009(入门级) 

2-4、Python-VBA编程500例-010(入门级) 

Python算法之旅:http://iyenn.com/rec/1699032.html?spm=1001.2014.3001.5502 
个人主页:非风V非雨-CSDN博客
欢迎志同道合者一起交流学习,我的QQ:94509325/微信号:

文章知识点与官方知识档案匹配,可进一步学习相关知识
算法技能树首页概览60120 人正在系统学习中
遨游码海,我心飞扬
微信名片
注:本文转载自blog.csdn.net的神奇夜光杯的文章"https://blog.csdn.net/ygb_1024/article/details/136765365"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top