名字竞技场
Update:
2024.8.19:1.0版本完成。
2024.8.20:修复了攻击可能为负数的Bug以及将输入结束符改为Ctrl+Z。
2024.8.20:新增了治愈和疾跑。
2024.8.20:在输入时新增了清空和删除上一个,并去除了重复的名字。
2024.8.20:将每个字符的映射值改为随机值。
2024.8.21:在同一个窗口中可以玩多次,并将输入结束符更改为字符串EOF
。
2024.8.22:下调了使用魔法的概率。
#include<bits/stdc++.h>
#include<windows.h>
#define int long long
#define endl "\n"
using namespace std;
const int maxn=1e6+5,mod=1e17;
struct Player{
string name,killer;
int charge,heal,fast,magic,defend,id,killsum,nowheal,nowfast,act,resist;
bool ice,curce,faster,die;
}play[maxn];
int n,pos[maxn];
unordered_map<string,bool>mp;
unordered_map<int,bool>pm;
int get_heal(string x){
int res=0,cnt=1;
for(int i=0;i<x.size();i++){
res+=pos[x[i]]*cnt;
cnt*=54;
cnt%=mod;
res%=200;
res+=200;
}
return res;
}
int get_charge(string x){
int res=0,cnt=1;
for(int i=0;i<x.size();i++){
res+=pos[x[i]]*cnt;
cnt*=45;
cnt%=mod;
res%=40;
res+=60;
}
return res;
}
int get_defend(string x){
int res=0,cnt=1;
for(int i=0;i<x.size();i++){
res+=pos[x[i]]*cnt;
cnt*=50;
cnt%=mod;
res%=40;
res+=60;
}
return res;
}
int get_fast(string x){
int res=0,cnt=1;
for(int i=0;i<x.size();i++){
res+=pos[x[i]]*cnt;
cnt*=53;
cnt%=mod;
res%=50;
res+=50;
}
return res;
}
int get_magic(string x){
int res=0,cnt=1;
for(int i=0;i<x.size();i++){
res+=pos[x[i]]*cnt;
cnt*=48;
cnt%=mod;
res%=50;
res+=50;
}
return res;
}
int get_resist(string x){
int res=0,cnt=1;
for(int i=0;i<x.size();i++){
res+=pos[x[i]]*cnt;
cnt*=49;
cnt%=mod;
res%=35;
res+=65;
}
return res;
}
void input(){
system("cls");
cout<<"输入结束时请用\"EOF\"结束\n若想重新输入请输入 \"clear\" ,若想删除上一个请输入 \"del\"\n请输入名字(作者注:不可组队(才不会告诉你是我太菜了写不出来)):\n";
string tmp;
n=0;
while(cin>>tmp){
if(tmp=="clear"){
n=0;
system("cls");
cout<<"输入结束时请用\"Ctrl+Z\"结束\n若想重新输入请输入 \"clear\" ,若想删除上一个请输入 \"del\"\n请输入名字(作者注:不可组队(才不会告诉你是我太菜了写不出来)):\n";
continue;
}
if(tmp=="del"){
cout<<"退格成功!"<<endl;
n--;
continue;
}
if(tmp=="EOF")break;
if(mp[tmp]==1)continue;
n++;
mp[tmp]=1;
play[n].name=tmp;
play[n].heal=play[n].nowheal=get_heal(tmp);
play[n].charge=get_charge(tmp);
play[n].fast=play[n].nowfast=get_fast(tmp);
play[n].magic=get_magic(tmp);
play[n].defend=get_defend(tmp);
play[n].resist=get_resist(tmp);
play[n].id=n;
}
system("pause");
}
long long rrr(long long aa,long long bb){
for(int iiii=0;iiii<114514;iiii+rand()%114) iiii++;
if(aa>=0||bb<=0){ return rand()%(bb-aa+1)+aa;}
else
{
if(rand()%2==0) return rrr(1,bb);
else return(aa,0);
}
}
bool Is_win(){
int ans=0;
for(int i=1;i<=n;i++){
if(play[i].die==0){
ans++;
}
}
return ans==1;
}
bool cmp(Player x,Player y){
return x.fast>y.fast;
}
bool CMP(Player x,Player y){
return x.act<y.act;
}
void Play(){
system("cls");
for(int i=1;i<=n;i++){
cout<<play[i].name<<" 血量:"<<play[i].heal<<" 攻击:"<<play[i].charge<<" 防御:"<<play[i].defend<<" 速度:"<<play[i].fast<<" 魔力:"<<play[i].magic<<" 抗性:"<<play[i].resist<<endl;
}
sort(play+1,play+n+1,cmp);
for(int i=1;i<=n;i++){
play[i].act=i;
}
sort(play+1,play+n+1,CMP);
int poss=0;
cout<<"\n";
while(1){
if(Is_win()){
break;
}
poss%=n;
poss++;
if(play[poss].die==1){
continue;
}
int now=rrr(1,n);
while(1){
now=rrr(1,n);
if(play[now].die==1){
continue;
}
if(now!=poss){
if(play[poss].magic>play[now].magic){
int tmp=rrr(1,4);
if(tmp!=2){
if(play[now].resist>play[poss].charge){
int tmp=rrr(1,114514);
if(tmp%2==0){
cout<<play[poss].name<<" 对 "<<play[now].name<<" 发起攻击, "<<play[now].name<<" 闪避了攻击\n";
break;
}
else{
if(play[now].curce==1){
if(play[now].defend>play[poss].charge){
play[now].nowheal-=max(0.0,1.5*(play[poss].charge-(play[now].defend-play[poss].charge)));
cout<<play[poss].name<<" 对 "<<play[now].name<<" 发起攻击,造成了 "<<max(0.0,1.5*(play[poss].charge-(play[now].defend-play[poss].charge)))<<" 点伤害\n";
}
else{
play[now].nowheal-=1.5*play[poss].charge;
cout<<play[poss].name<<" 对 "<<play[now].name<<" 发起攻击,造成了 "<<1.5*(play[poss].charge)<<" 点伤害\n";
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
play[now].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">5</span>);
<span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">1</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了地裂术\n"</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=poss+<span class="hljs-number">1</span>;i<=poss+<span class="hljs-number">1</span>+<span class="hljs-number">5</span>;i++){
<span class="hljs-keyword">if</span>(i>n)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(play[i].die==<span class="hljs-number">1</span>)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(i==poss)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(play[i].resist>play[poss].charge){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击, "</span><<play[i].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[i].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[i].defend>play[poss].charge/<span class="hljs-number">2</span>){
play[i].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[i].nowheal-=<span class="hljs-number">1.5</span>*play[poss].charge/<span class="hljs-number">2</span>;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(play[poss].charge/<span class="hljs-number">2</span>)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[i].nowheal<=<span class="hljs-number">0</span>){
play[i].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[i].killer=play[poss].name;
cout<<play[i].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}play[i].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">if</span>(play[i].defend>play[poss].charge/<span class="hljs-number">2</span>){
play[i].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[i].nowheal-=play[poss].charge/<span class="hljs-number">2</span>;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge/<span class="hljs-number">2</span>)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[i].nowheal<=<span class="hljs-number">0</span>){
play[i].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[i].killer=play[poss].name;
cout<<play[i].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
}
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[i].defend>play[poss].charge/<span class="hljs-number">2</span>){
play[i].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[i].nowheal-=play[poss].charge/<span class="hljs-number">2</span>;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge/<span class="hljs-number">2</span>)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[i].nowheal<=<span class="hljs-number">0</span>){
play[i].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[i].killer=play[poss].name;
cout<<play[i].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-keyword">continue</span>;
}
}
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">2</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了雷击术\n"</span>;
<span class="hljs-type">int</span> last=play[now].charge;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=<span class="hljs-number">1</span>;i<=<span class="hljs-number">5</span>;i++){
<span class="hljs-keyword">if</span>(play[now].die==<span class="hljs-number">1</span>){
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">if</span>(play[now].resist>last){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击, "</span><<play[now].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[now].defend>last){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(last-(play[now].defend-last)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(last-(play[now].defend-last)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">1.5</span>*last;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(last)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}play[now].curce=<span class="hljs-number">0</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>last){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=last;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(last)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend>last){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=last;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(last)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
}
last/=<span class="hljs-number">2</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">3</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了诅咒\n"</span>;
cout<<<span class="hljs-string">" "</span><<play[now].name<<<span class="hljs-string">" 被诅咒了\n"</span>;
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">4</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了冰冻术\n"</span>;
cout<<<span class="hljs-string">" "</span><<play[now].name<<<span class="hljs-string">" 被冰冻了\n"</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=now+<span class="hljs-number">1</span>;i<=n;i++){
<span class="hljs-built_in">swap</span>(play[i],play[i<span class="hljs-number">-1</span>]);
}
}
<span class="hljs-keyword">else</span>{
cout<<play[poss].name<<<span class="hljs-string">" 使用了火球术\n"</span>;
<span class="hljs-keyword">if</span>(play[now].resist><span class="hljs-number">2</span>*play[poss].charge){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击, "</span><<play[now].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[now].defend><span class="hljs-number">2</span>*play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">1.5</span>*<span class="hljs-number">2</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(<span class="hljs-number">2</span>*play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
play[now].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">2</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(<span class="hljs-number">2</span>*play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend><span class="hljs-number">2</span>*play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">2</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(<span class="hljs-number">2</span>*play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].resist>play[poss].charge){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击, "</span><<play[now].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[now].defend-play[poss].charge)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[now].defend-play[poss].charge)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">1.5</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
play[now].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-type">int</span> hhhh=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">4</span>);
<span class="hljs-keyword">if</span>(hhhh!=<span class="hljs-number">3</span>)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(play[poss].nowheal>=play[poss].heal&&play[poss].nowfast!=play[poss].fast){
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">if</span>(play[poss].nowheal<play[poss].heal&&play[poss].nowfast!=play[poss].fast){<span class="hljs-type">int</span> ahah=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">3</span>);
cout<<play[poss].name<<<span class="hljs-string">"使用了治愈,回复"</span><<play[poss].heal/<span class="hljs-number">10</span>*ahah<<<span class="hljs-string">"点血量\n"</span>;
play[poss].nowheal+=play[poss].heal/<span class="hljs-number">10</span>*ahah;
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(play[poss].nowheal>=play[poss].heal&&play[poss].nowfast==play[poss].fast){
cout<<play[poss].name<<<span class="hljs-string">"使用了疾跑\n"</span>;
play[poss].nowfast*=<span class="hljs-number">1.3</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=poss<span class="hljs-number">-1</span>;i>=<span class="hljs-number">1</span>;i--){
<span class="hljs-keyword">if</span>(play[i+<span class="hljs-number">1</span>].nowfast>play[i].nowfast){
<span class="hljs-built_in">swap</span>(play[i+<span class="hljs-number">1</span>],play[i]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">break</span>;
}
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-type">int</span> ttmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(ttmp%<span class="hljs-number">2</span>==<span class="hljs-number">1</span>){
<span class="hljs-comment">//hixue</span>
<span class="hljs-type">int</span> ahah=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">5</span>);
cout<<play[poss].name<<<span class="hljs-string">"使用了治愈,回复"</span><<play[poss].heal/<span class="hljs-number">10</span>*ahah<<<span class="hljs-string">"点血量\n"</span>;
play[poss].nowheal+=play[poss].heal/<span class="hljs-number">10</span>*ahah;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-comment">//jipao</span>
cout<<play[poss].name<<<span class="hljs-string">"使用了疾跑\n"</span>;
play[poss].nowfast*=<span class="hljs-number">1.3</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=poss<span class="hljs-number">-1</span>;i>=<span class="hljs-number">1</span>;i--){
<span class="hljs-keyword">if</span>(play[i+<span class="hljs-number">1</span>].nowfast>play[i].nowfast){
<span class="hljs-built_in">swap</span>(play[i+<span class="hljs-number">1</span>],play[i]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">break</span>;
}
}
}
}
<span class="hljs-keyword">break</span>;
}
}
}
}
bool Cmp(Player x,Player y){
return x.killsum>y.killsum;
}
void output(){
int poss;
sort(play+1,play+n+1,Cmp);
for(int i=1;i<=n;i++){
if(play[i].die0){
poss=i;
break;
}
}
cout<<"\n";
cout<<"胜者:\n"<<play[poss].name<<" 击杀数:"<<play[poss].killsum<<" 致命一击: \n";
cout<<"败者:\n";
for(int i=1;i<=n;i++){
if(iposs)continue;
cout<<play[i].name<<" 击杀数:"<<play[i].killsum<<" 致命一击:"<<play[i].killer<<"\n";
}
}
signed main(){
srand(time(0));
int cnt;
for(char i='A';i<='Z';i++){
while(pm[cnt]1){
cnt=rrr(1,63);
}
pos[i]=cnt;
pm[cnt]=1;
}
for(char i='a';i<='z';i++){
while(pm[cnt]1){
cnt=rrr(1,63);
}
pos[i]=cnt;
pm[cnt]=1;
}for(char i='0';i<='9';i++){
while(pm[cnt]1){
cnt=rrr(1,63);
}
pos[i]=cnt;
pm[cnt]=1;
}
char i='_';
while(pm[cnt]1){
cnt=rrr(1,63);
}
pos[i]=cnt;
pm[cnt]=1;
cout<<<span class="hljs-string">"欢迎来到名字竞技场!\n注意事项:\n1. 名字只能输入英文字母 and 下划线 and 数字。\n3. 你会发现没有 2。\n"</span>;
<span class="hljs-built_in">system</span>(<span class="hljs-string">"pause"</span>);
<span class="hljs-keyword">while</span>(<span class="hljs-number">1</span>){
<span class="hljs-built_in">input</span>();
<span class="hljs-built_in">Play</span>();
<span class="hljs-built_in">output</span>();
cout<<<span class="hljs-string">"是否继续?(Y/N)"</span><<endl;
<span class="hljs-type">char</span> cnm;
cin>>cnm;
<span class="hljs-keyword">if</span>(cnm==<span class="hljs-string">'N'</span>){
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">return</span> <span class="hljs-number">0</span>;
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
play[now].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">5</span>);
<span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">1</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了地裂术\n"</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=poss+<span class="hljs-number">1</span>;i<=poss+<span class="hljs-number">1</span>+<span class="hljs-number">5</span>;i++){
<span class="hljs-keyword">if</span>(i>n)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(play[i].die==<span class="hljs-number">1</span>)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(i==poss)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(play[i].resist>play[poss].charge){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击, "</span><<play[i].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[i].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[i].defend>play[poss].charge/<span class="hljs-number">2</span>){
play[i].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[i].nowheal-=<span class="hljs-number">1.5</span>*play[poss].charge/<span class="hljs-number">2</span>;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(play[poss].charge/<span class="hljs-number">2</span>)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[i].nowheal<=<span class="hljs-number">0</span>){
play[i].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[i].killer=play[poss].name;
cout<<play[i].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}play[i].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">if</span>(play[i].defend>play[poss].charge/<span class="hljs-number">2</span>){
play[i].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[i].nowheal-=play[poss].charge/<span class="hljs-number">2</span>;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge/<span class="hljs-number">2</span>)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[i].nowheal<=<span class="hljs-number">0</span>){
play[i].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[i].killer=play[poss].name;
cout<<play[i].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
}
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[i].defend>play[poss].charge/<span class="hljs-number">2</span>){
play[i].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[i].defend-play[poss].charge/<span class="hljs-number">2</span>))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[i].nowheal-=play[poss].charge/<span class="hljs-number">2</span>;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[i].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge/<span class="hljs-number">2</span>)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[i].nowheal<=<span class="hljs-number">0</span>){
play[i].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[i].killer=play[poss].name;
cout<<play[i].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-keyword">continue</span>;
}
}
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">2</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了雷击术\n"</span>;
<span class="hljs-type">int</span> last=play[now].charge;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=<span class="hljs-number">1</span>;i<=<span class="hljs-number">5</span>;i++){
<span class="hljs-keyword">if</span>(play[now].die==<span class="hljs-number">1</span>){
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">if</span>(play[now].resist>last){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击, "</span><<play[now].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[now].defend>last){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(last-(play[now].defend-last)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(last-(play[now].defend-last)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">1.5</span>*last;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(last)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}play[now].curce=<span class="hljs-number">0</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>last){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=last;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(last)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend>last){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,last-(play[now].defend-last))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=last;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(last)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
}
last/=<span class="hljs-number">2</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">3</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了诅咒\n"</span>;
cout<<<span class="hljs-string">" "</span><<play[now].name<<<span class="hljs-string">" 被诅咒了\n"</span>;
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(tmpp==<span class="hljs-number">4</span>){
cout<<play[poss].name<<<span class="hljs-string">" 使用了冰冻术\n"</span>;
cout<<<span class="hljs-string">" "</span><<play[now].name<<<span class="hljs-string">" 被冰冻了\n"</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=now+<span class="hljs-number">1</span>;i<=n;i++){
<span class="hljs-built_in">swap</span>(play[i],play[i<span class="hljs-number">-1</span>]);
}
}
<span class="hljs-keyword">else</span>{
cout<<play[poss].name<<<span class="hljs-string">" 使用了火球术\n"</span>;
<span class="hljs-keyword">if</span>(play[now].resist><span class="hljs-number">2</span>*play[poss].charge){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击, "</span><<play[now].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[now].defend><span class="hljs-number">2</span>*play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">1.5</span>*<span class="hljs-number">2</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(<span class="hljs-number">2</span>*play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
play[now].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">2</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(<span class="hljs-number">2</span>*play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend><span class="hljs-number">2</span>*play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,<span class="hljs-number">2</span>*play[poss].charge-(play[now].defend<span class="hljs-number">-2</span>*play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">2</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(<span class="hljs-number">2</span>*play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].resist>play[poss].charge){
<span class="hljs-type">int</span> tmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击, "</span><<play[now].name<<<span class="hljs-string">" 闪避了攻击\n"</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].curce==<span class="hljs-number">1</span>){
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[now].defend-play[poss].charge)));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0.0</span>,<span class="hljs-number">1.5</span>*(play[poss].charge-(play[now].defend-play[poss].charge)))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=<span class="hljs-number">1.5</span>*play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-number">1.5</span>*(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
play[now].curce=<span class="hljs-number">0</span>;
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>(play[now].defend>play[poss].charge){
play[now].nowheal-=<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge));
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<<span class="hljs-built_in">max</span>(<span class="hljs-number">0ll</span>,play[poss].charge-(play[now].defend-play[poss].charge))<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">else</span>{
play[now].nowheal-=play[poss].charge;
cout<<play[poss].name<<<span class="hljs-string">" 对 "</span><<play[now].name<<<span class="hljs-string">" 发起攻击,造成了 "</span><<(play[poss].charge)<<<span class="hljs-string">" 点伤害\n"</span>;
}
<span class="hljs-keyword">if</span>(play[now].nowheal<=<span class="hljs-number">0</span>){
play[now].die=<span class="hljs-number">1</span>;
play[poss].killsum++;
play[now].killer=play[poss].name;
cout<<play[now].name<<<span class="hljs-string">" 被击倒了\n"</span>;
}
<span class="hljs-type">int</span> tmpp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(tmpp%<span class="hljs-number">2</span>==<span class="hljs-number">0</span>){
<span class="hljs-keyword">if</span>(now==n){
<span class="hljs-built_in">swap</span>(play[now],play[<span class="hljs-number">1</span>]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-built_in">swap</span>(play[now],play[now+<span class="hljs-number">1</span>]);
}
}
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">break</span>;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-type">int</span> hhhh=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">4</span>);
<span class="hljs-keyword">if</span>(hhhh!=<span class="hljs-number">3</span>)<span class="hljs-keyword">continue</span>;
<span class="hljs-keyword">if</span>(play[poss].nowheal>=play[poss].heal&&play[poss].nowfast!=play[poss].fast){
<span class="hljs-keyword">continue</span>;
}
<span class="hljs-keyword">if</span>(play[poss].nowheal<play[poss].heal&&play[poss].nowfast!=play[poss].fast){<span class="hljs-type">int</span> ahah=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">3</span>);
cout<<play[poss].name<<<span class="hljs-string">"使用了治愈,回复"</span><<play[poss].heal/<span class="hljs-number">10</span>*ahah<<<span class="hljs-string">"点血量\n"</span>;
play[poss].nowheal+=play[poss].heal/<span class="hljs-number">10</span>*ahah;
}
<span class="hljs-keyword">else</span> <span class="hljs-keyword">if</span>(play[poss].nowheal>=play[poss].heal&&play[poss].nowfast==play[poss].fast){
cout<<play[poss].name<<<span class="hljs-string">"使用了疾跑\n"</span>;
play[poss].nowfast*=<span class="hljs-number">1.3</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=poss<span class="hljs-number">-1</span>;i>=<span class="hljs-number">1</span>;i--){
<span class="hljs-keyword">if</span>(play[i+<span class="hljs-number">1</span>].nowfast>play[i].nowfast){
<span class="hljs-built_in">swap</span>(play[i+<span class="hljs-number">1</span>],play[i]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">break</span>;
}
}
}
<span class="hljs-keyword">else</span>{
<span class="hljs-type">int</span> ttmp=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">114514</span>);
<span class="hljs-keyword">if</span>(ttmp%<span class="hljs-number">2</span>==<span class="hljs-number">1</span>){
<span class="hljs-comment">//hixue</span>
<span class="hljs-type">int</span> ahah=<span class="hljs-built_in">rrr</span>(<span class="hljs-number">1</span>,<span class="hljs-number">5</span>);
cout<<play[poss].name<<<span class="hljs-string">"使用了治愈,回复"</span><<play[poss].heal/<span class="hljs-number">10</span>*ahah<<<span class="hljs-string">"点血量\n"</span>;
play[poss].nowheal+=play[poss].heal/<span class="hljs-number">10</span>*ahah;
}
<span class="hljs-keyword">else</span>{
<span class="hljs-comment">//jipao</span>
cout<<play[poss].name<<<span class="hljs-string">"使用了疾跑\n"</span>;
play[poss].nowfast*=<span class="hljs-number">1.3</span>;
<span class="hljs-keyword">for</span>(<span class="hljs-type">int</span> i=poss<span class="hljs-number">-1</span>;i>=<span class="hljs-number">1</span>;i--){
<span class="hljs-keyword">if</span>(play[i+<span class="hljs-number">1</span>].nowfast>play[i].nowfast){
<span class="hljs-built_in">swap</span>(play[i+<span class="hljs-number">1</span>],play[i]);
}
<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">break</span>;
}
}
}
}
<span class="hljs-keyword">break</span>;
}
}
}
cout<<<span class="hljs-string">"欢迎来到名字竞技场!\n注意事项:\n1. 名字只能输入英文字母 and 下划线 and 数字。\n3. 你会发现没有 2。\n"</span>;
<span class="hljs-built_in">system</span>(<span class="hljs-string">"pause"</span>);
<span class="hljs-keyword">while</span>(<span class="hljs-number">1</span>){
<span class="hljs-built_in">input</span>();
<span class="hljs-built_in">Play</span>();
<span class="hljs-built_in">output</span>();
cout<<<span class="hljs-string">"是否继续?(Y/N)"</span><<endl;
<span class="hljs-type">char</span> cnm;
cin>>cnm;
<span class="hljs-keyword">if</span>(cnm==<span class="hljs-string">'N'</span>){
<span class="hljs-keyword">break</span>;
}
}
<span class="hljs-keyword">return</span> <span class="hljs-number">0</span>;
}
本人(KK_SpongeBob)蒟蒻,写不出好文章,但转载请注明原文链接:https://www.cnblogs.com/OIer-QAQ/p/18575252
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· 【全网最全教程】使用最强DeepSeekR1+联网的火山引擎,没有生成长度限制,DeepSeek本体