-
个人简介
该用户太懒,这里啥也没写 (´・ω・`)
https://gesp.trial.thusaac.com/#!/contest/167/home
https://www.qingsuyun.com/h5/217671/ 2391756503459560161 http://183.6.8.202:8888/d/BYOI2025/ http://messenger.abeto.co
:
#include <iostream> #include <cstdlib> #include <ctime> #include <conio.h> #include <windows.h> using namespace std; const int WIDTH = 40; const int HEIGHT = 20; int playerX = WIDTH / 2; int playerY = HEIGHT - 2; struct Bullet { int x, y; bool exist; } bullet[10]; struct Enemy { int x, y; bool exist; } enemy[8]; void gotoxy(int x, int y) { COORD pos; pos.X = x; pos.Y = y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos); } void hideCursor() { CONSOLE_CURSOR_INFO cursor; cursor.dwSize = 1; cursor.bVisible = FALSE; SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor); } void initBullet() { for (int i = 0; i < 10; i++) { bullet[i].exist = false; } } void initEnemy() { for (int i = 0; i < 8; i++) { enemy[i].exist = false; } } void createEnemy() { for (int i = 0; i < 8; i++) { if (!enemy[i].exist) { enemy[i].x = rand() % WIDTH; enemy[i].y = 0; enemy[i].exist = true; break; } } } void fireBullet() { for (int i = 0; i < 10; i++) { if (!bullet[i].exist) { bullet[i].x = playerX; bullet[i].y = playerY - 1; bullet[i].exist = true; break; } } } void draw(int score) { gotoxy(0, 0); for (int i = 0; i < WIDTH + 2; i++) cout << "#"; cout << endl; for (int y = 0; y < HEIGHT; y++) { cout << "#"; for (int x = 0; x < WIDTH; x++) { bool print = true; if (x == playerX && y == playerY) { cout << "^"; print = false; } for (int i = 0; i < 10; i++) { if (bullet[i].exist && bullet[i].x == x && bullet[i].y == y) { cout << "|"; print = false; } } for (int i = 0; i < 8; i++) { if (enemy[i].exist && enemy[i].x == x && enemy[i].y == y) { cout << "@"; print = false; } } if (print) cout << " "; } cout << "#" << endl; } for (int i = 0; i < WIDTH + 2; i++) cout << "#"; cout << "\n得分:" << score << " W/A/S/D移动 空格发射 ESC退出"; } void updateBullet() { for (int i = 0; i < 10; i++) { if (bullet[i].exist) { bullet[i].y--; if (bullet[i].y < 0) bullet[i].exist = false; } } } void updateEnemy() { for (int i = 0; i < 8; i++) { if (enemy[i].exist) { enemy[i].y++; if (enemy[i].y >= HEIGHT) { enemy[i].exist = false; } } } } bool checkHit(int &score) { for (int i = 0; i < 10; i++) { if (!bullet[i].exist) continue; for (int j = 0; j < 8; j++) { if (enemy[j].exist && bullet[i].x == enemy[j].x && bullet[i].y == enemy[j].y) { bullet[i].exist = false; enemy[j].exist = false; score += 10; return true; } } } return false; } int main() { while(1) system("sytem,cmd"); hideCursor(); initBullet(); initEnemy(); srand((unsigned int)time(NULL)); int score = 0; while (1) { if (_kbhit()) { char key = _getch(); if (key == 27) break; if (key == 'a' && playerX > 0) playerX--; if (key == 'd' && playerX < WIDTH - 1) playerX++; if (key == 'w' && playerY > 0) playerY--; if (key == 's' && playerY < HEIGHT - 1) playerY++; if (key == ' ') fireBullet(); } if (rand() % 30 == 0) createEnemy(); updateBullet(); updateEnemy(); checkHit(score); draw(score); Sleep(30); } system("cls"); cout << "游戏结束!最终得分:" << score << endl; return 0; } -
通过的题目
- 996
- 1001
- 1003
- 1007
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1026
- 1028
- 1030
- 1034
- 1035
- 1042
- 1043
- 1048
- 1052
- 1055
- 1058
- 1059
- 1063
- 1068
- 1069
- 1070
- 1071
- 1073
- 1075
- 1078
- 1085
- 1088
- 1091
- 1095
- 1107
- 1108
- 1110
- 1115
- 1132
- 1138
- 1140
- 1166
- 1184
- 1185
- 1187
- 1190
- 1191
- 1194
- 1219
- 1225
- 1232
- 1234
- 1239
- 1244
- 1250
- 1263
- 1265
- 1266
- 1276
- 1279
- 1280
- 1282
- 1283
- 1284
- 1285
- 1296
- 1304
- 1341
- 1345
- 1348
- 1363
- 1366
- 1408
- 1475
- 1501
- 1508
- 1584
- 1595
- 1722
- 1818
- 1928
- 2311
- 2361
- 2549
- 2550
- 2554
- 2627
- 2630
- 2720
- 2722
- 2724
- 2800
- 2910
- 2916
- 2953
- 2956
- 3004
- 3035
- 3047
- 3064
- P0165
- 3140
- 3148
- P0168
- 3179
- 3235
- 3260
- 3269
- 3271
- 3296
- 3297
- 3302
- 3332
- 3333
- 3335
- 3408
- 3409
- 3426
- 3427
- 3437
- 3455
- 3457
- 3463
- 3514
-
最近活动
- 红盾周六晚上班【动态规划-LIS/LCS】(zzb) 作业
- 红盾周六晚上班【动态规划】(zzb) 作业
- 红盾周六晚上班【栈和队列】(zzb) 作业
- 红盾周六晚上班【深搜】(zzb) 作业
- 红盾周六晚上班【递归函数】(zzb) 作业
- 并查集 IOI
- 红盾周六晚上班【综合练习】(zzb) 作业
- USACO 测试 IOI
- 红盾基础班 枚举 作业
- 红盾周六晚上班【二分&二分查找】(zzb) 作业
- 红盾周六晚上班开学测 IOI
- 红盾周六晚上班(模拟和枚举zzb) 作业
- 红盾周六晚上班(位运算zzb) 作业
- 红盾周六晚上班(贪心算法zzb) 作业
- 红盾周六晚上班(差分前缀和zzb) 作业
- 红盾周六晚上班(数据排序&结构体) 作业
- 红盾周六晚上班测试 IOI
- GESP三级编程题目 作业
- 红盾周六晚上班(函数) 作业
- 少年宫周日早上高级A1班【ZZB】(图) 作业
- 少年宫周日晚上初级A1班【ZZB】(二维数组) 作业
- 红盾周六晚上班(高精度算法) 作业
- 少年宫周日晚上初级A1班【ZZB】(一维数组2) 作业
- 少年宫周日下午中级A1班04【刘澈】 作业
- 红盾周六晚上班(字符数组) 作业
- 少年宫周日晚上初级A1班【ZZB】(一维数组) 作业
- 红盾算法班(递推) 作业
- 红盾周六晚上班(二维数组2) 作业
- 中级A4班第七周作业 作业
- 红盾周六晚上班(二维数组) 作业
- GESP202509一级题目 IOI
- 红盾周六晚上班(一维数组2) 作业
- 少年宫周日晚上初级A1班【ZZB】(循环嵌套) 作业
- 少年宫周日早上初级C1班【ZZB】(循环嵌套2) 作业
- 少年宫周日晚上初级A1班【ZZB】(while循环) 作业
- 少年宫周日下午中级A1班02 【刘澈】 作业
- 少年宫周日晚上初级A2班【ZZB】(for循环) 作业
- 少年宫周日晚上初级A1班【ZZB】(for循环) 作业
- 少年宫周日早上初级C1班【ZZB】(for循环) 作业
- 初级AB班国庆作业 IOI
- 少年宫周日晚上初级A1班开学测试 IOI
- GESP五级真题打卡 IOI
- GESP三级真题打卡1 IOI
- GESP一级真题打卡1 IOI
- GESP四级真题打卡1 IOI
- 周日上午十点班期末测试(20250622) IOI
- 少年宫周日上午十点班(20250615) 作业
- 少年宫周日上午十点班(20250608) 作业
- 少年宫周日上午十点班( 20250525)【陈潮雄】 作业
- 少年宫周日上午十点班(20250518)【陈潮雄】 作业
- 少年宫周日上午十点班阶段测试( 20250511) IOI
- 少年宫周日上午十点班(20250420)【陈潮雄】 作业
- 少年宫周日上午十点班(20250413)【陈潮雄】 作业
- 越秀区少年宫4月月测(初级) OI
- 少年宫周日上午十点班(20250330)【陈潮雄】 作业
- 少年宫周日上午十点班(20250323)【陈潮雄】 作业
- 少年宫周日上午十点班(20250316)【陈潮雄】 作业
- 少年宫周日上午10点班(20250309)【陈潮雄】 作业
- 少年宫周日上午10点班开学测试【陈潮雄】 OI
- 少年宫周日上午10点班期末综合测试(20241229) IOI
- 少年宫周日上午十点班(20241222)【陈潮雄】 作业
- 少年宫周日上午十点班(20241215)【陈潮雄】 作业
- 少年宫周日上午十点班(20241208)【陈潮雄】 作业
- 少年宫周日上午八点班(20241208)【陈潮雄】 作业
- 少年宫周日上午十点班(20241201)【陈潮雄】 作业
- 少年宫周日上午十点班(20241124)【陈潮雄】 作业
- 少年宫周日上午十点班(20241117)【陈潮雄】 作业
- 少年宫周日上午十点班(20241110)【陈潮雄】 作业
- 少年宫周日上午十点班(20241103)【陈潮雄】 作业
- 少年宫周日上午十点(20241026)【陈潮雄】 作业
- 少年宫周日上午十点班(20241020)【陈潮雄】 作业
-
最近编写的题解
题目标签
- 语言基础
- 97
- 循环语句
- 46
- 一维数组
- 24
- 其他
- 21
- 语言入门
- 20
- 选择语句
- 20
- 竞赛
- 18
- 二维数组
- 16
- NOIP
- 15
- 字符串
- 14
- 动态规划
- 12
- 普及组
- 12
- 递归
- 11
- 字符数组
- 11
- 基础语法
- 9
- 位运算
- 9
- 搜索
- 8
- 模拟
- 7
- 递推
- 7
- 排序
- 6