#include <bits/stdc++.h>
using namespace std;
int main()
{
long long int x,y,z,n,m,result,num;
int t,i,j,len;
char a[30];
scanf("%d",&t);
for(j=1; j<=t; j++)
{
result=0;
x=0;
scanf("%s",a);
len=strlen(a);
for(i=0; i<len-4; i++)
x=x*10+a[i]-'0';
y=a[len-4]-'0';
z=a[len-3]-'0';
n=a[len-2]-'0';
m=a[len-1]-'0';
num=x+y-z*n/m;
result=max(result,num);
y=0;
for(i=1; i<len-3; i++)
y=y*10+a[i]-'0';
x=a[0]-'0';
z=a[len-3]-'0';
n=a[len-2]-'0';
m=a[len-1]-'0';
num=x+y-z*n/m;
result=max(result,num);
if(len>5)
{
x=0;
for(i=0; i<len-5; i++)
x=x*10+a[i]-'0';
y=a[len-5]-'0';
z=a[len-4]-'0';
n=a[len-3]-'0';
m=(a[len-2]-'0')*10+a[len-1]-'0';
num=x+y-z*n/m;
result=max(result,num);
y=0;
for(i=1; i<len-4; i++)
y=y*10+a[i]-'0';
x=a[0]-'0';
z=a[len-4]-'0';
n=a[len-3]-'0';
m=(a[len-2]-'0')*10+a[len-1]-'0';
num=x+y-z*n/m;
result=max(result,num);
}
printf("Case #%d: %lld\n",j,result);
}
return 0;
}


求助 為什么我的代碼總是WA
對照了一下AC的代碼 感覺沒什么差別 為什么會WA呢 檢查了好幾遍沒找到錯誤 希望有大佬幫忙看看
AC代碼:
//
//by coolxxx
//#include<bits/stdc++.h>
#include<iostream>
#include<algorithm>
#include<string>
#include<iomanip>
#include<map>
#include<stack>
#include<queue>
#include<set>
#include<bitset>
#include<memory.h>
#include<time.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//#include<stdbool.h>
#include<math.h>
#pragma comment(linker,"/STACK:1024000000,1024000000")
#define min(a,b) ((a)<(b)?(a):(b))
#define max(a,b) ((a)>(b)?(a):(b))
#define abs(a) ((a)>0?(a):(-(a)))
#define lowbit(a) (a&(-a))
#define sqr(a) ((a)*(a))
#define swap(a,b) ((a)^=(b),(b)^=(a),(a)^=(b))
#define mem(a,b) memset(a,b,sizeof(a))
#define eps (1e-8)
#define J 10000
#define mod 1000000007
#define MAX 0x7f7f7f7f
#define PI 3.14159265358979323
#define N 24
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
double anss;
LL aans;
int cas,cass;
int n,m,lll,ans;
LL sum,tot,s1,s2;
char s[N];
int main()
{
#ifndef ONLINE_JUDGEW
// freopen("1.txt","r",stdin);
// freopen("2.txt","w",stdout);
#endif
int i,j,k;
int x,y,z;
// init();
// for(scanf("%d",&cass);cass;cass--)
for(scanf("%d",&cas),cass=1;cass<=cas;cass++)
// while(~scanf("%s",s))
// while(~scanf("%d%d",&n,&m))
{
tot=0;sum=0;s1=0;s2=0;
printf("Case #%d: ",cass);
scanf("%s",s);
n=strlen(s);
tot=-(s[n-3]-'0')*(s[n-2]-'0')/(s[n-1]-'0');
s1=s[0]-'0';s2=0;
for(i=1;i<n-3;i++)
s2=s2*10+s[i]-'0';
sum=tot+s1+s2;
s1=s[n-4]-'0';s2=0;
for(i=0;i<n-4;i++)
s2=s2*10+s[i]-'0';
tot+=s1+s2;
sum=max(sum,tot);
if(n>5)
{
tot=-(s[n-4]-'0')*(s[n-3]-'0')/((s[n-2]-'0')*10+s[n-1]-'0');
s1=s[0]-'0';s2=0;
for(i=1;i<n-4;i++)
s2=s2*10+s[i]-'0';
tot+=s1+s2;
sum=max(sum,tot);
tot=-(s[n-4]-'0')*(s[n-3]-'0')/((s[n-2]-'0')*10+s[n-1]-'0');
s1=s[n-5]-'0';s2=0;
for(i=0;i<n-5;i++)
s2=s2*10+s[i]-'0';
tot+=s1+s2;
sum=max(sum,tot);
}
printf("%lld\n",sum);
}
return 0;
}
/*
//
//
*/
uj5u.com熱心網友回復:
題目鏈接:https://vjudge.net/contest/405628#problem/F轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/216461.html
標籤:C++ 語言
上一篇:C語言學習程序中的問題討論
下一篇:MAIN.C(60): error C267: 'printf': requires ANSI-style prototype
