作者: Jimmy 管理员
标签: C++
创建日期:2024年10月21日 20:30
浏览量:12
第一题 标题统计title
#include <bits/stdc++.h>
using namespace std;
int main(){
freopen("title.in","r",stdin);
freopen("title.out","w",stdout);
string s;
int n=0;
while(cin>>s){
n+=s.length();
}
cout<<n;
return 0;
}
第二题 龙虎斗fight
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e5;
int c[N+9];
signed main(){
freopen("fight.in","r",stdin);
freopen("fight.out","w",stdout);
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>c[i];
}
int m,p1,s1,s2,tiger=0,dragon=0;
cin>>m>>p1>>s1>>s2;
for(int i=1;i<m;i++){
tiger+=c[i]*(m-i);
}
for(int i=m+1;i<=n;i++){
dragon+=c[i]*(i-m);
}
if(p1>m){
c[p1]+=s1;
dragon+=s1*(p1-m);
}else if(p1<m){
c[p1]+=s1;
tiger+=s1*(m-p1);
}
int p2=1,minn=0x7fffffff;
for(int i=1;i<=n;i++){
if(i<m){
tiger+=s2*(m-i);
int dis=abs(tiger-dragon);
if(dis<minn){
p2=i;
minn=dis;
}
tiger-=s2*(m-i);
}else if(i>m){
dragon+=s2*(i-m);
int dis=abs(tiger-dragon);
if(dis<minn){
p2=i;
minn=dis;
}
dragon-=s2*(i-m);
}else if(i==m){
int dis=abs(tiger-dragon);
if(dis<minn){
p2=i;
minn=dis;
}
}
}
cout<<p2;
return 0;
}