题解 CF203A 【Two Problems】

Fractures

2019-04-05 20:26:01

Solution

## 给自己翻译的题目写题解的感觉真是奇妙呢 那么这道题就是一道暴力水题,直接一个一个搜索不用怕超时,~~毕竟数据太水了~~ #### 但是,弱弱的我还是一开始做错了(我好弱啊) ```cpp #include<cstdio> using namespace std; int x,t,a,b,da,db; int orz[10001],sto[100001]; int main(){ scanf("%d%d%d%d%d%d",&x,&t,&a,&b,&da,&db); for(int i=0;i<t;i++){ orz[i]=a-da*i; sto[i]=b-db*i; } for(int i=0;i<t;i++){ for(int j=0;j<t;j++){ if(orz[i]+sto[j]==x){ printf("YES"); return 0; } } } printf("NO"); return 0; } ``` ↑错误代码 ##### 其实打眼一看没什么错误,但是忘了一个很重要的东西:没有考虑到他可以干脆不叫的零分 所以改了代码之后就是这个样: ```cpp #include<cstdio> using namespace std; int x,t,a,b,da,db; int orz[1000001],sto[100001]; int main(){ scanf("%d%d%d%d%d%d",&x,&t,&a,&b,&da,&db); for(int i=0;i<t;i++){ orz[i]=a-da*i; sto[i]=b-db*i; } orz[t]=0; sto[t]=0; for(int i=0;i<=t;i++){ for(int j=0;j<=t;j++){ if(orz[i]+sto[j]==x){ printf("YES\n"); return 0; } } } printf("NO\n"); return 0; } ``` 那么这道题就水过去啦2333