摸鱼大闯关答案(1~20)

Stage 1 

    题目

       如图所示:

 

    分析

        让我们进入下一关,直接将地址栏的 stage1.html 改为 stage2.html 即可

    解题

https://p.hancel.org/stage2.html


Stage 2

    题目

如图所示:

  分析 

F12查看源码,可以看到下一关的地址:

    解题

直接在地址栏输入:

https://p.hancel.org/nexts.html


Stage 3

    题目+分析

分析

 F12(右键-查看源代码),可以看到下一关的地址

    解题

https://p.hancel.org/gogo.html


Stage 4

    题目+分析 

F12查看源代码我们可以在元素末行发现其注释下标出下一关的网址,复制即可:

    解题

https://p.hancel.org/lang/mac.html


Stage 5


    题目+分析 

首先我们可以通过其页面给出的信息为Windows系统图标,和下方的Linux系统图标,本题地址为mac.html,通过三者信息一结合,可知将地址改为linux.html即为下题答案。

    解题

https://p.hancel.org/lang/linux.html


Stage 6


    题目+分析 

查看源代码,我们会发现其中有一个图片地址,点击跳转,我们会发现下一题答案就在图片之中,ruby.php。

    解题

https://p.hancel.org/lang/ruby.php


Stage 7


    题目+分析 

第七关我们开始到了密码关,老规矩F12查看下源代码,我们可以看见有这样一串英文,他说密码在这里 The password is here,OK,这下我们就可以联想一下密码是不是here,输入跳转进入下一关。

直接在输入框输入即可

https://p.hancel.org/lang/ruby.php


Stage 8

    题目+分析

F12,我们可以看见给出我们的三条信息,1:HTML实体字符  2:&????;  3:密码是五个字母的单词

我们可以想到 (空格)的英文单词也是五个字母:space,

答案:space    


Stage 9

    题目+分析 

我们可以看见地址是rome.html,罗马的意思,源代码中有提示说这是一种加密方法,试试凯撒解密。然后我们就可以得到密码为mathematic.html

 

 

答案:mathematic.html    


Stage 10

    题目+分析 

我们先查看源代码发现提示Hex,发现那串数字最高为9,试试十进制转换,根据现实结果,试试十六进制发现是正确答案。

 

  答案:effaced.html

https://p.hancel.org/helloworld/effaced.html


Stage 11


    题目+分析 

两个提示:1:一串字符串; 2:base,我们可以联想到base加密,进行解密尝试一下,得出密码为:The password is storage

  答案:storage


Stage 12

  题目+分析 

给我们的提示是一个经纬度,通过地图分析确定其表示地点为哪里,转换得打结果为 天安门

  答案  tiananmen


Stage 13

  题目+分析 

根据给出的提示,我们能轻易看出这是一串摩斯密码,进行解密即可!  HELLO.MORSE 

  答案: HELLO.MORSE 


Stage 14

  题目+分析 

 两条提示:   1:sony(索尼)     2:注释说这是一个梗,我们可以搜索一下索尼这是一个梗的相关信息,可以得到图二的图片信息 return4,所以密码就是4.

  答案:4


Stage 15

  题目+分析 

查看源代码,发现代码存在问题,删除id的值,id="",即可。


Stage 16

  题目+分析 

16题没有给出提交功能,我们可以根据之前题中的源代码进行添加。添加一行<input type="submit" name="Submit" value="确认密码" οnclick="return check()">即可

  答案:源代码中添加一行代码,<input type="submit" name="Submit" value="确认密码" οnclick="return check()">


Stage 17

  题目+分析 

F12查看源代码,可以看见其给出的密码已经远远超出20的范围,所以对源代码中的maxlength="20"的数值进行修改即可。

  答案:将maxlength="20"的值修改即可。


Stage 18

  题目+分析 

 没有提交功能,添加一行源代码即可。

  答案:<input type="submit" name="Submit" value="确认密码" οnclick="return check()">


Stage 19

  题目+分析 

根据提示,我们将18题答案进行MD5解码,答案结果为18;同理将19通过MD5进行加密,得出答案:1f0e3dad99908345f7439f8ffabdffc4

  答案:1f0e3dad99908345f7439f8ffabdffc4


Stage 20

  题目+分析 

分析代码可知结果为:110037296

  答案:110037296

  • 10
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
循环链表是一种特殊的链表结构,它的尾节点指向头节点,形成一个环形结构。与单链表相比,循环链表的插入和删除操作更为方便,因为不需要考虑头节点的特殊情况。 设计与实现循环链表的关键是定义节点类和循环链表类。节点类需要包含一个数据成员,用来保存节点数据,以及一个指针成员,用来指向下一个节点。循环链表类则需要包含头节点指针和链表长度等属性,以及插入、删除和打印链表等方法。 首先,定义节点类: class ListNode { public: int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; 然后,定义循环链表类: class CircularLinkedList { private: ListNode *head; int count; public: CircularLinkedList() { head = NULL; count = 0; } // 在链表末尾插入节点 void insertAtEnd(int val) { ListNode *newNode = new ListNode(val); if (head == NULL) { head = newNode; head->next = head; } else { ListNode *temp = head; while (temp->next != head) { temp = temp->next; } temp->next = newNode; newNode->next = head; } count++; } // 删除指定位置的节点 void deleteAt(int pos) { if (pos < 1 || pos > count) { cout << "位置不合法" << endl; return; } ListNode *temp = head; if (pos == 1) { head = head->next; delete temp; } else { for (int i = 1; i < pos - 1; i++) { temp = temp->next; } ListNode *nodeToDelete = temp->next; temp->next = temp->next->next; delete nodeToDelete; } count--; } // 打印链表 void printLinkedList() { if (head == NULL) { cout << "链表为空" << endl; return; } ListNode *temp = head; do { cout << temp->val << " "; temp = temp->next; } while (temp != head); cout << endl; } }; 通过定义节点类和循环链表类,我们可以方便地进行循环链表的插入、删除和打印操作。在闯关过程中,我们可以根据题目要求,使用循环链表来解决相关问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值