C++版iwanna1

第一篇目录

  • 开头
  • 程序
    • Game.cpp源文件
    • Player.h头文件
    • Player.cpp源文件
    • trigger.h头文件
    • trigger.cpp源文件
    • Cmp.h头文件
    • Cmp.cpp源文件

开头

大家好,我叫这是我58。

程序

Game.cpp源文件

#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
#include <cstring>
#include <fstream>
#include <cstdio>
#include "Player.h"
#include "trigger.h"
using namespace std;
void deadset(int (*deadarr)[3], fstream& fs) {int i = 0;for (; i < 3; i++) {fs >> (*deadarr)[i];fs.flush();}
}
void printstart() {cout << "*****    * * *   ***   *   *  *   *   ***      ***    ***     *****   ***     *****  *   *  *****   \033[32;1m* *  ***    * *\033[0m" << endl;cout << "  *      * * *  *   *  **  *  **  *  *   *    *      *   *      *    *   *      *    *   *  *     \033[32;1m * *  *      * *\033[0m " << endl;cout << "  *      * * *  *****  * * *  * * *  *****    *  **  *   *      *    *   *      *    *****  *****       \033[32;1m* ***\033[0m      " << endl;cout << "  *       * *   *   *  *  **  *  **  *   *    *   *  *   *      *    *   *      *    *   *  *           \033[32;1m*   *\033[0m      " << endl;cout << "*****     * *   *   *  *   *  *   *  *   *     ***    ***       *     ***       *    *   *  *****        \033[32;1m***\033[0m       " << endl;
}
int main() {system("title I WANNA GO TO THE \"G\"");char strmap[22][22] = {'G',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','#',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*','X','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','S',' ','X','X','X','X','X','X','X','X','X','X','X','*','*','*','X','X','X','X','X','X','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ','S','*','*','*','*','*','*','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ',' ','*',' ',' ','X',' ',' ',' ',' ',' ',' ','*','X','*',' ',' ',' ',' ',' ','*',' ',' ',' ',' ','G',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ','*',' ',' ',' ',' ','*','*','*','*','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ',' ','X',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*','*','*','*','*',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X','X',' ',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ','*','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ','X',' ','*',' ',' ',' ',' ',' ',' ',' ','X','X','*','X','X','X',' ','X','X','X',' ','X','X','X','*','X','X','X','X','X','X',};char strmapr[22][22] = { 0 };memcpy(strmapr, strmap, sizeof strmap);Player p;char ch = 0;int itrap = -1;int ishoot = 0;int ibsv = 0;fstream fs("s.txt", ios::in);fs.flush();if ((!fs.is_open()) || fs.eof()) {fs.close();fs.open("s.txt", ios::out);fs << "0 0 0 0";fs.close();fs.open("s.txt", ios::in);}bool barr[3] = { 0 };fs >> ibsv;for (ch = 0; ch < 3; ch++) {barr[ch] = (ibsv & (1 << ch));}trigger t[22] = { trigger(20,3,20,3,0), trigger(16,5,16,6,1),trigger(19,12,20,12,2),trigger(17,13,17,13,3),trigger(17,15,17,16,3),trigger(14,14,14,15,3),trigger(13,16,13,17,3),trigger(15,18,15,19,3),trigger(11,20,11,21,4),trigger(0,16,9,16,6),trigger(8,11,9,13,7),trigger(4,5,7,9,8),trigger(9,6,9,8,9),trigger(3,1,3,3,10),trigger(11,1,11,1,11),trigger(11,3,11,3,12),trigger(13,1,14,1,13),trigger(13,7,15,8,14),trigger(15,11,17,11,15),trigger(16,12,17,12,16),trigger(21,13,21,13,17),trigger(11,8,11,8,18) };printstart();cout << endl << endl << endl << endl << endl << endl << endl << "\t\t\t\t\t  ";system("pause");system("cls");printstart();cout << endl << "              \033[31;1m********\033[0m                          \033[33m********\033[0m                              \033[32;1m********\033[0m" << endl;cout << "             \033[31;1m* SAVE 1 *\033[0m                        \033[33m* SAVE 2 *\033[0m                            \033[32;1m* SAVE 3 *\033[0m" << endl;cout << "              \033[31;1m********\033[0m                          \033[33m********\033[0m                              \033[32;1m********\033[0m" << endl << endl;cout << "游戏内:a左走    d右走    w二段跳,空中一段    z\033[33m存档\033[0m/射弹    r重开    \033[31;1m“X”死\033[0m   “*”墙    \033[31;1m“#”按钮\033[0m,\033[32;1m射就触发机关\033[0m    \033[33m“S”存档\033[0m    \033[32;1m“G”终点\033[0m" << endl <<  "开始界面:1~3选择要玩的存档    d删存档" << endl << endl << endl;cin >> ch;int deadarr[3] = { 0 };deadset(&deadarr, fs);while (ch < '1' || ch > '3') {while (rewind(stdin), (ch < '1' || ch > '3') && 'd' != ch) {cout << "\033[31;1m输入错误,请重新输入\033[0m" << endl << endl;cin >> ch;if (ch >= '1' && ch <= '3') {goto g;}}cout << "\033[31;1m请输入要删除的存档编号(输入错误就不删除存档)\033[0m" << endl << endl;cin >> ch;if (rewind(stdin), ch < '1' || ch > '3') {cout << "\033[31;1m输入错误,不删除存档\033[0m" << endl << endl;cin >> ch;continue;}int index = ch - 1 - '0';(ibsv & (1 << index)) && (ibsv -= (1 << index));barr[index] = 0;fs.close();fs.open("s.txt", ios::trunc | ios::out);deadarr[index] = 0;fs << ibsv;for (int i = 0; i < 3; i++) {fs << " " << deadarr[i];}fs.flush();cout << "\033[32m删除成功!\033[0m" << endl << endl;cin >> ch;}g:int barri = (--ch -= '0');system("cls");char* cp = (t[0].saveset(barr[barri]) ? &strmap[9][20] : &strmap[21][0]);*cp = 'P';fs << (char)(ibsv + '0');fs.close();while ('G' == strmap[0][0]) {char str[100] = "title I WANNA GO TO THE \"G\" : 似亡 * ";char stra[100] = "";sprintf(stra, "%d", deadarr[barri]);strcat(str, stra);system(str);' ' == strmap[9][20] && (strmap[9][20] = 'S');' ' == strmap[11][21] && (strmap[11][21] = 'S');p.sgetxy(X) = (cp - &strmap[0][0]) / 22;p.sgetxy(Y) = (cp - &strmap[0][0]) % 22;p.printmap(strmap);cin >> ch;rewind(stdin);*cp = ' ';switch (ch) {case 'a':p.left_move(&cp);break;case 'd':p.right_move(&cp);break;case 'w':p.Djump(&cp);break;case 'z':p.shoot(ishoot, &cp);break;case 'r':p.reset(&cp, &strmap, &strmapr, &t, deadarr[barri]);break;default:break;}for (int i = 0; i < 22; i++) {t[i].check(p.sgetxy(X), p.sgetxy(Y), &strmap, &strmapr, p, itrap, &cp, ch, &t, deadarr[barri]);}itrap > 0 && itrap--, !itrap && (strmap[14][5] = ' ', strmap[15][5] = 'X');p.upOrDown(&cp);p.shootmove(&strmap, barri, ibsv);p.rejump(&cp);if ('X' == *cp) {p.gameover(&cp, &strmap, &strmapr, &t, deadarr[barri]);}*cp = 'P';ishoot > 0 && ishoot--;system("cls");fs.open("s.txt", ios::trunc | ios::out);fs << (char)(ibsv + '0');for (int i = 0; i < 3; i++) {sprintf(str, "%d", deadarr[i]);fs << " " << str;}fs.close();}system("color 0A");cout << "恭喜你,你赢了,似了" << deadarr[barri] << "次" << endl;fs.close();return 0;
}

Player.h头文件

#pragma once
#include <iostream>
#include <vector>
#include "trigger.h"
using namespace std;
#define JUMPHIGH 3
enum XY {X,Y,
};
struct trir {char* cp;bool b;int iy;
};
class Player {
private:int ix;int iy;int ijh;int ij;bool blr;vector<trir> v;
public:friend class trigger;Player();void printmap(const char strmap[22][22]);void Djump(char** cpp);void left_move(char** cpp);void right_move(char** cpp);int& sgetxy(XY xymode);void upOrDown(char** cpp);void gameover(char** cpp, char(*strmap)[22][22], const char(*strmapr)[22][22], trigger(*tarr)[22], int& idead);void reset(char** cpp, char(*strmap)[22][22], const char(*strmapr)[22][22], trigger(*tarr)[22], int& idead);void rejump(char** cp);void shoot(int& i, char** cpp);void shootmove(const char (*strmap)[22][22], int barri, int& ibsv);
};

Player.cpp源文件

#include <iostream>
#include <algorithm>
#include <cstring>
#include <fstream>
#include "trigger.h"
#include "Player.h"
#include "Cmp.h"
using namespace std;
Player::Player(){ij = 2;ijh = 0;blr = 1;
}
bool MSB = false;
bool MSBa = false;
bool MSBb = false;
bool MSBc = false;
bool MSv = false;
void Player::printmap(const char strmap[22][22]) {int i = 0;int ia = 0;for (; i < 22; i++) {for (ia = 0; ia < 22; ia++) {cout << "\033[" << ('G' == strmap[i][ia] ? "32;1m" : 'X' == strmap[i][ia] ? "31;1m" : '#' == strmap[i][ia] ? trigger::MSB ? "32;1m" : "31;1m" : 'S' == strmap[i][ia] ? ((!trigger::MSv) || 21 == ia) ? "33m" : "33;1m" : '@' == strmap[i][ia] ? "33m" : "0m") << strmap[i][ia] << "\033[0m";}cout << "|" << endl;}cout << "----------------------@" << endl;
}
void Player::Djump(char** cpp) {switch (ij) {case 2:((21 == ix || '*' == (*cpp)[22] || '#' == (*cpp)[22]) && (ij = 1, ijh = JUMPHIGH), (21 != ix && '*' != (*cpp)[22] && '#' != (*cpp)[22]) && (ij = 0, ijh = JUMPHIGH));break;case 1:((21 == ix || '*' == (*cpp)[22] || '#' == (*cpp)[22]) && (ij = 2), (21 != ix && '*' != (*cpp)[22] && '#' != (*cpp)[22]) && (ij = 0, ijh = JUMPHIGH));break;default:rejump(cpp);((21 == ix || '*' == (*cpp)[22] || '#' == (*cpp)[22]) && (ij = 1, ijh = JUMPHIGH), (21 != ix && '*' != (*cpp)[22] && '#' != (*cpp)[22]) && (ij = 0));break;}
}
void Player::left_move(char** cpp) {(iy && '*' != *(*cpp - 1) && '#' != *(*cpp - 1) && ((*cpp)--));blr = false;
}
void Player::right_move(char** cpp) {21 != iy && '*' != *(*cpp + 1) && '#' != *(*cpp + 1) && ((*cpp)++);blr = true;
}
int& Player::sgetxy(XY xymode) {return xymode ? iy : ix;
}
void Player::upOrDown(char** cpp) {if (ijh > 0 && ix && '*' != (*cpp)[-22] && '#' != (*cpp)[-22]) {ijh--, *cpp -= 22;}else if ('*' != (*cpp)[22] && '#' != (*cpp)[22] && (!ix || '*' == (*cpp)[-22] || '#' == (*cpp)[-22])) {ijh = 0, *cpp += 22;}else if ('*' != (*cpp)[22] && '#' != (*cpp)[22] && 21 != ix) {*cpp += 22;}
}
void Player::gameover(char** cpp, char (*strmap)[22][22], const char (*strmapr)[22][22], trigger(*tarr)[22], int& idead) {char ch = 0;system("cls");' ' == (*strmap)[9][20] && ((*strmap)[9][20] = 'S');printmap(*strmap);cout << "\033[31;1m游戏结束 请按r键重新开始\033[0m" << endl;while (ch - 'r') {cin >> ch;rewind(stdin);system("cls");if (ch - 'r') {printmap(*strmap);cout << "\033[31;1m游戏结束 请按r键重新开始\033[0m" << endl;}}reset(cpp, strmap, strmapr, tarr, idead);
}
void Player::reset(char** cpp, char(*strmap)[22][22], const char(*strmapr)[22][22], trigger(*tarr)[22], int& idead) {idead++;trigger::MSv && (*cpp = &((*strmap)[9][20]), ix = 9, iy = 20), trigger::MSv || (*cpp = &((*strmap)[21][0]), ix = 21, iy = 0);trigger::MSB = false;MSBa = false;MSBb = false;MSBc = false;blr = true;int i = 0;memcpy(*strmap, *strmapr, sizeof(*strmapr));for (; i < 22; i++) {(*tarr)[i].MBt = false;}v.clear();rejump(cpp);
}
void Player::rejump(char** cpp) {(21 == ix || '*' == (*cpp)[22]) && (ij = 2);
}
void Player::shoot(int& i, char** cpp) {if ((!i) && (iy && blr || 21 != iy && (!blr))) {v.push_back({*cpp, blr, iy});i = 3;}
}
void Player::shootmove(const char(*strmap)[22][22], int barri, int& ibsv) {for (vector<trir>::iterator it = v.begin();v.end()!=it;it++) {(' ' == *it->cp || '@' == *it->cp) && (*it->cp = ' ');'#' == *it->cp && (trigger::MSB = true);if (&((*strmap)[9][20]) == it->cp) {trigger::MSv = true;(!(ibsv & (1 << barri))) && (ibsv += (1 << barri));}if ('*' == *it->cp || '#' == *it->cp || (!it->iy && (!it->b)) || (21 == it->iy && it->b)) {it->iy = -1;}if (0 <= it->iy) {it->cp -= (1 - it->b * 2);it->iy -= (1 - it->b * 2);(' ' == *it->cp || '@' == *it->cp) && (*it->cp = '@');}}sort(v.begin(), v.end(), cmp());while ((!v.empty()) && 0 > v.begin()->iy) {v.erase(v.begin());}
}

trigger.h头文件

#pragma once
#include <iostream>
#include "Player.h"
using namespace std;
class trigger {
private:int MISX;int MISY;int MIEX;int MIEY;int Mtrig;bool MBt;static bool MSB;static bool MSBa;static bool MSBb;static bool MSBc;static bool MSv;
public:friend class Player;trigger(int istartx, int istarty, int iendx, int iendy, int trig) :MISY(istarty), MIEX(iendx), MIEY(iendy), MISX(istartx), Mtrig(trig), MBt(false) {}void check(int ix, int iy, char(*strmap)[22][22], const char(*strmapr)[22][22], Player& p, int& ii, char** cpp, char ch, trigger(*tarr)[22], int& idead);bool saveset(bool b);
};

trigger.cpp源文件

#include <iostream>
#include "trigger.h"
#include <string>
#include "Player.h"
using namespace std;
bool trigger::MSB = false;
bool trigger::MSBa = false;
bool trigger::MSBb = false;
bool trigger::MSBc = false;
bool trigger::MSv = false;
void trigger::check(int ix, int iy, char (*strmap)[22][22], const char (*strmapr)[22][22],Player& p, int& ii, char** cpp, char ch, trigger(*tarr)[22], int& idead) {int i = 0;if (MISX <= ix && ix <= MIEX && MISY <= iy && iy <= MIEY && (Mtrig - 4 && Mtrig - 8 && Mtrig - 16 && Mtrig - 18 ? (!MBt) : 1)) {switch (MBt = true, Mtrig) {case 0:(*strmap)[21][3] = 'X';p.gameover(cpp, strmap, strmapr, tarr, idead);break;case 1:for (i = 16; i < 21; i++) {(*strmap)[i][6] = 'X';}break;case 2:for (i = 18; i < 22; i++) {if ('X' == (*strmap)[i][13]) {(*strmap)[i][13] = ' ';}else {(*strmap)[i][13] = 'X';}}break;case 3:for (i = MISX; i <= MIEX; i++) {for (int ia = MISY; ia <= MIEY; ia++) {(*strmap)[i][ia] = 'X';}}p.gameover(cpp, strmap, strmapr, tarr, idead);break;case 4:if ('z' == ch) { (*strmap)[13][19] = 'L';(*strmap)[13][20] = 'O';(*strmap)[13][21] = 'L';p.gameover(cpp, strmap, strmapr, tarr, idead);}break;case 6:if (!MSB) {for (i = 0; i < 10; i++) {(*strmap)[i][15] = 'X';}}break;case 7:for (i = 8; i < 10; i++) {(*strmap)[i][10] = '*';(*strmap)[i][14] = '*';}for (; i < 15; i++) {(*strmap)[7][i] = '*';}break;case 8:((!MSBa) && '*' == (*cpp)[22]) && ((*cpp)[22] = 'X');break;case 9:MSBa = true;for (i = 6; i < 9; i++) {(*strmap)[10][i] = '*';}break;case 10:for (i = 1; i < 4; i++) {(*strmap)[4][i] = '*';}break;case 11:{ string str = "LOL LOL"; char* cpa = &((*strmap)[11][2]);char* cpb = &(str[0]);for (i = 0; i < 7; i++, cpa++, cpb++) {*cpa = *cpb;}MSBb = true;}break;case 12:(*strmap)[11][0] = 'G';(*strmap)[14][0] = ' ';break;case 13:(*strmap)[11][0] = 'G';(*strmap)[13][0] = ' ';(*strmap)[13][5] = 'X';(*strmap)[13][2] = ' ';(*strmap)[15][5] = '*';for (i = 16; i < 21; i++) {(*strmap)[i][0] = 'L';(*strmap)[i][1] = 'O';(*strmap)[i][2] = 'L';}break;case 14:ii = 10;break;case 15:MSBc = true;for (i = 10; i < 13; i++) {(*strmap)[14][i] = 'X';}(*strmap)[13][10] = '*';for (i = 0; i < 11; i++) {(*strmap)[10][i] = '*';}if (*cpp == &((*strmap)[14][12])) {p.gameover(cpp, strmap, strmapr, tarr, idead);}break;case 16:if (MSBc) {(*strmap)[14][10] = ' ';(*strmap)[14][11] = ' ';'*' == (*cpp)[22] && ((*cpp)[22] = 'X');}break;case 17:(*strmap)[21][13] = 'X';break;case 18:if (MSBb) {*cpp = &((*strmap)[11][7]);(*strmap)[11][8] = '*';MSBb = false;}break;default:break;}}
}
bool trigger::saveset(bool b) {MSv = b;return MSv;
}

Cmp.h头文件

#pragma once
#include <iostream>
#include <vector>
#include "Player.h"
using namespace std;
class cmp {
public:bool operator()(trir t, trir ta);
};

Cmp.cpp源文件

#include <iostream>
#include <vector>
#include "Cmp.h"
#include "Player.h"
using namespace std;
bool cmp::operator()(trir t, trir ta) {return t.iy < ta.iy;
}

C++版iwanna2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1556895.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Rspamd:开源垃圾邮件过滤系统

Rspamd 是一个开源垃圾邮件过滤和电子邮件处理框架&#xff0c;旨在根据各种规则评估消息&#xff0c;包括正则表达式、统计分析以及与 URL 黑名单等自定义服务的集成。 系统会分析每封邮件并做出判定&#xff0c;MTA可据此采取进一步行动&#xff0c;例如拒绝邮件或添加垃圾邮…

低照度图像增强网络——EnlightenGAN

系列文章目录 GAN生成对抗网络介绍https://blog.csdn.net/m0_58941767/article/details/142704354?spm1001.2014.3001.5501 循环生成对抗网络——CycleGANhttps://blog.csdn.net/m0_58941767/article/details/142704671?spm1001.2014.3001.5501 目录 系列文章目录 前言 …

SSM社区慢性病管理系统—计算机毕业设计源码37572

摘 要 社区慢性病管理是社区卫生服务的主要内容&#xff0c;发展社区卫生服务是提供基本卫生服务、满足人民群众日益增长的卫生服务需求&#xff0c;也是提高人民健康水平的重要保障。为迎接慢性病防治的挑战我国进行了社区卫生服务改革&#xff0c;但由于社区卫生存在的诸多问…

OJ在线评测系统 微服务 OpenFeign调整后端下 nacos注册中心配置 不给前端调用的代码 全局引入负载均衡器

OpenFeign内部调用二 4.修改各业务服务的调用代码为feignClient 开启nacos注册 把Client变成bean 该服务仅内部调用&#xff0c;不是给前端的 将某个服务标记为“内部调用”的目的主要有以下几个方面&#xff1a; 安全性: 内部API通常不对外部用户公开&#xff0c;这样可以防止…

【CF2021E】Digital Village(All Version)

题目 给你一张 n n n 个点 m m m 条边的无向图&#xff0c;有 p p p 个关键点。你需要选择 k k k 个点染黑&#xff0c;使得这 p p p 个关键点到这 k k k 个黑点的代价和最小。定义代价为两点之间边权最大的边的最小值。 你需要求出 k 1,2,…,n 的所有答案 E1 n,m,p&l…

fiddler抓包20_弱网模拟

课程大纲 ① 打开CustomRules.js文件&#xff1a;Fiddler快捷键“CtrlR”(或鼠标点击&#xff0c;菜单栏 - Rules - Customize Rules)。 ② 设置速率&#xff1a;“CtrlF”&#xff0c;搜索 “m_SimulateModem”&#xff0c;定位至函数。在函数里设置上传、下载速率&#xff0c…

乔斯编程——P3283 通信救援

说明 众所周知&#xff0c;在同一平面内到定点的距离等于定长的点的集合叫做圆。这个定点叫做圆的圆心&#xff0c;定长即圆的半径。 同时用圆心的坐标和圆的半径&#xff0c;就可以确定圆在平面内的位置&#xff0c; 在本题当中&#xff0c;我们根据圆在平面覆盖的区域来描述…

全面解析大型模型Agent智能体原理及实践案例

1 什么是大模型 Agent &#xff1f; 大模型 Agent&#xff0c;作为一种人工智能体&#xff0c;是具备环境感知能力、自主理解、决策制定及执行行动能力的智能实体。简而言之&#xff0c;它是构建于大模型之上的计算机程序&#xff0c;能够模拟独立思考过程&#xff0c;灵活调…

动态规划10:174. 地下城游戏

动态规划解题步骤&#xff1a; 1.确定状态表示&#xff1a;dp[i]是什么 2.确定状态转移方程&#xff1a;dp[i]等于什么 3.初始化&#xff1a;确保状态转移方程不越界 4.确定填表顺序&#xff1a;根据状态转移方程即可确定填表顺序 5.确定返回值 题目链接&#xff1a;174.…

【FPGA】面试八股

1.FPGA的底层资源有哪些 &#xff08;1&#xff09;可编程的逻辑资源 可编程的逻辑单元由查找表&#xff08;LUT&#xff09;,数据选择器&#xff08;MUX&#xff09;,进位链&#xff08;Carry Chain&#xff09;和触发器&#xff08;Flip-Flop&#xff09; &#xff08;2&…

毕业设计——物联网设备管理系统后台原型设计

作品详情 主要功能&#xff1a; 通过构建数字化综合体&#xff0c;利用物联网技术、设备监控技术采集生产线设备等物对象的实时数据&#xff0c;加强信息汇聚管理和服务&#xff0c;多系统维度、多层次的清楚地掌握设施各系统的状态&#xff0c;提高厂房服务的可控性、安全性&…

算法剖析:双指针

文章目录 双指针算法一、 移动零1. 题目2. 算法思想3. 代码实现 二、 复写零1. 题目2. 算法思想3. 代码实现 三、 快乐数1. 题目2. 算法思想3. 代码实现 四、 盛水最多的容器1. 题目2. 算法思想3. 代码实现 五、有效三角形的个数1. 题目2. 算法思想3. 代码实现 六、 和为 s 的两…

出国必备神器!这5款中英翻译工具让你秒变外语达人

在这个全球化的时代&#xff0c;中英互译已然成为我们日常生活和工作中不可或缺的一环。面对众多的翻译工具&#xff0c;如何选择一款既高效又人性化的翻译助手呢&#xff1f;今天&#xff0c;就让我为大家揭秘几款热门的中英互译工具&#xff0c;并分享我的使用感受。 一、福昕…

中广核CGN25届校招网申SHL测评题库、面试流程、招聘对象,内附人才测评认知能力真题

​中国广核集团校园招聘在线测评攻略&#x1f680; &#x1f393; 校园招聘对象 2024届、2025届海内外全日制应届毕业生&#xff0c;大专、本科、硕士、博士&#xff0c;广核集团等你来&#xff01; &#x1f4c8; 招聘流程 投递简历 简历筛选 在线测评&#xff08;重点来啦…

用java编写飞机大战

游戏界面使用JFrame和JPanel构建。背景图通过BG类绘制。英雄机和敌机在界面上显示并移动。子弹从英雄机发射并在屏幕上移动。游戏有四种状态&#xff1a;READY、RUNNING、PAUSE、GAMEOVER。状态通过鼠标点击进行切换&#xff1a;点击开始游戏&#xff08;从READY变为RUNNING&am…

详解Redis分布式锁在SpringBoot的@Async方法中没锁住的坑

背景 Redis分布式锁很有用处&#xff0c;在秒杀、抢购、订单、限流特别是一些用到异步分布式并行处理任务时频繁的用到&#xff0c;可以说它是一个BS架构的应用中最高频使用的技术之一。 但是我们经常会碰到这样的一个问题&#xff0c;那就是我们都按照标准做了但有时运行着、…

JavaEE之多线程进阶-面试问题

一.常见的锁策略 锁策略不是指某一个具体的锁&#xff0c;所有的锁都可以往这些锁策略中套 1.悲观锁与乐观锁 预测所冲突的概率是否高&#xff0c;悲观锁为预测锁冲突的概率较高&#xff0c;乐观锁为预测锁冲突的概率更低。 2.重量级锁和轻量级锁 从加锁的开销角度判断&am…

【Docker】03-自制镜像

1. 自制镜像 2. Dockerfile # 基础镜像 FROM openjdk:11.0-jre-buster # 设定时区 ENV TZAsia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # 拷贝jar包 COPY docker-demo.jar /app.jar # 入口 ENTRYPOINT ["ja…

【强训笔记】day26

NO.1 思路&#xff1a;只需判断长度为2和3的回文子串。 代码实现&#xff1a; #include<iostream> #include<string>using namespace std;string s;int main() {cin>>s;int ns.size(),ret-1;for(int i0;i<n;i){if(i1<n&&s[i]s[i1]){ret2;}i…

笔试题总结

1.对于线性表的描述&#xff1a;存储空间不一定是连续&#xff0c;且各元素的存储顺序是任意的 2.虚函数的定义&#xff1a;函数的返回值参数不定&#xff0c; 声明&#xff1a; 类型&#xff0c;返回这类型 名字&#xff08;&#xff09;&#xff1b; 例如声明一个虚函数&a…