##  T1 (~~史上最shui的第一题~~)
**数据:五个字符(大小写字母,数字,空格以及换行符)**

本蒟蒻考试时,用的是getchar()一个一个读;判断如果是大小写字母,数字就ans++,否则如果不是空格就跳出(~~过了民间数据~~)

附上代码:
```
#include<cstdio>
#include<cstring>
using namespace std;
int ans;
int main()
{
    for(int i=0;i<5;i++)
    {
        char p=getchar();
        if((p<=\'z\' && p>=\'a\')||(p<=\'9\'&&p>=\'0\')||(p<=\'Z\'&&p>=\'A\'))
            ans++;
        else
        {
            if(p!=\' \')
             break;
        }
    }
    printf(\"%d\",ans);
    return 0;
}
```
或用getline(cin, );
介绍一下<cctype>

这个头文件下有许多函数,可以直接调用

isalnum:判断字符是否为字母数字

isalpha:判断字符是否为字母

isdigit:判断字符是否为十进制数

islower:判断字符是否为小写字母

isupper:判断字符是否为大写字母

ispunct:判断字符是否为标点

tolower:将大写字母转成小写

toupper:将小写字母转成大写

……
```
#include<cstring>
#include<cctype>
#include<iostream>
using namespace std;
int ans;
int main()
{
    string a;
    getline(cin,a);
    for(int i=0;i<a.length();i++)
        if(isalnum(a[i]))    
            ans++;
    printf(\"%d\",ans);
    return 0;
}
```
## T2

数据:要开long long;
 
直接算出左右两边的气势差,枚举气势小的一边,维护左右两边气势差最小就行了。
一开始要让p2=m,因为可能会有加上s2*abs(i-m),左右两边的气势差更大的情况(~~考试时忘记了,于是就呵呵了~~)。

```
#include<cstdio>
#include<cmath>
using namespace std;
long long n,m,s1,p1,s2,a[100001];
int main()
{
    scanf(\"%lld\",&n);
    for(int i=1;i<=n;i++)
        scanf(\"%lld\",&a[i]);
    scanf(\"%lld%lld%lld%lld\",&m,&p1,&s1,&s2);
    a[p1]+=s1;
    long long lj=0,rj=0;
    for(int i=1;i<m;i++)
        lj+=a[i]*(m-i);
    for(int i=m+1;i<=n;i++)
        rj+=a[i]*(i-m);
    long long o=abs(lj-rj); 
    long long p2=m;
    if(lj<rj)
        for(int i=1;i<m;i++)
        {
            long long  temp=s2*(m-i)+lj;
            if(abs(temp-rj)<o)
            {
                p2=i;
                o=abs(temp-rj);
            }
        }
    else
        if(lj>rj)
            for(int i=m+1;i<=n;i++)
            {
                long long temp=s2*(i-m)+rj;
                if(abs(temp-lj)<o)
                {
                    p2=i;
                    o=abs(temp-lj);
                }
            }
    printf(\"%lld\\n\",p2);
    return 0;
}
```
 

收藏 打印