1 条题解

  • 0
    @ 2025-8-24 23:16:49

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Evan2000
    我要拿蓝√!!||支持壶关,忘关私

    搬运于2025-08-24 23:16:49,当前版本为作者最后更新于2025-05-26 16:06:28,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    思路

    首先我们可以定义一个变量 flagflag,如果遇到加号,flagflag 变成 11,如果遇到减号,flagflag 变成 1-1,如果遇到数字,那么用一个变量 numnum 记录这个数字是什么,然后将 DD 加上 num×flagnum \times flag,最后输出 DD 即可。

    AC 代码

    #include<bits/stdc++.h>
    #define int long long
    using namespace std;
    char s[20];
    signed main()
    {
    	int d,q;
    	scanf("%lld%lld",&d,&q);
    	int flag=1;
    	q*=2;
    	while(q--)
    	{
    		scanf("%s",s+1);
    		if(s[1]=='+')
    		{
    			flag=1;
    		}
    		else if(s[1]=='-')
    		{
    			flag=-1;
    		}
    		else
    		{
    			int len=strlen(s+1);
    			int num=0;
    			for(int i=1;i<=len;i++)
    			{
    				num=num*10+s[i]-'0';
    			}
    			d+=num*flag;
    		}
    	}
    	printf("%lld",d);
    	return 0;
    }
    
    • 1

    信息

    ID
    12362
    时间
    1000ms
    内存
    512MiB
    难度
    1
    标签
    递交数
    0
    已通过
    0
    上传者