痛苦的经历--自信心什么的大大的削弱

19 篇文章 0 订阅

在浙工ACM做题,那几天全部是WA,问了同学其中一道题,他AC了,我的却WA,是一个等差数列的,我用定义去判断,他用和去判断,他的AC了,我的测试了例子数据都对了但却就是WA,有好几道题都是这样,想不通,调试不了,烦死了,刷题的动力都没多少了,

刚好碰是cc赛题,那天晚上我上去做了一道叫uncle johny的题,自己琢磨了几个小时才弄懂题意,但是前面的情况又再次出现了,总是WA!测试的例子数据都对了,真是想不明白!这真的是一道坎啊,烦!无奈!

到了上周上C++实验课,第一道题,思路很快就出来了,旁边的同学不懂问我,我说了大概的思路,结果我的出错了,他的虽然也出了点错,但是离答案很近,调试一会就对了,我就再次悲剧了,怎么调都是错,找不出原因,我也看了下他的思路,和我的不同,感觉我的更好,就在那里死抠了,整整一个晚上的实验课我都在想那个题,心情糟糕透了。回宿舍也不想再想了,放下了先,过了两天,又是C++的实验课,老师说继续完成上次的实验,我又在那做那个第一题,我换了一个方法,优化了,但是还是那个问题,又想了很久,还是不行,找旁边的同学帮忙看下,也不行,看不懂,叫我换下思路,我的思路和他的是一样的,但是他的对了,我的错了。最后实在是死心了,问了老师,老师看都没看下,哦,是大概只撇了一下,然后叫我自己调试,对全部学生大声说要学会自己调试才行,不会调试是提高不了的,我当时就满脸的黑线,心里大骂老师,你怎么就知道我没有调试过?!这才几行代码啊,看一下会死啊,我还不如回宿舍自己做呢,要老师何用?!到最后下课了我还是没有做出一题,自信心什么的大大的削弱了,心里很是痛苦。(当时我的代码:)


#include<iostream>
using namespace std;
int maxnum(int a[],int s[],int k,int j,int m){
for(int i=k;i<=j;i++){
s[m]+=a[i];
}
return s[m];
}
int main(){
int n,max=0,begin=0,end=0,m=0;
cin>>n;
int *a= new int[n];
for(int i=0;i<n;i++)
cin>>a[i];
int *s= new int[n*n];
for(int k=0;k<n-1;k++){
for(int j=1;j<n;j++,m++){
cout<<maxnum(a,s,k,j,m)<<endl;
if(maxnum(a,s,k,j,m)>max){
max=maxnum(a,s,k,j,m);
begin=k;
end=j;
}
}
}
cout<<max<<endl<<"["<<begin+1<<","<<end+1<<"]"<<endl;
return 0;
}


当时就只是调试出s[m]或s[m]+=a[i];错了,在经历了前面的痛苦后我实在是想不出什么了,回了宿舍上Q群问了下大神们,没想到一位大神的一句话再次将我的自信心削了,他说:“你的算法还是最朴素的那种”(这个让我顿时想起前几天在群里问代码,被回应“很久没看过这么原始的代码了”),我离大神们的世界究竟有多远啊?!!!经过讨论是我的s[]数组没有初始化,我立刻深深的震惊了,这么小的问题!我这样改int *s= new int[n*n]();结果还是不行,百度了很久用了个for或者用memset(今天那群里讨论了下昨晚的最后问题:一般赋0直接memset,赋1就老老实实for吧)。

今天舍友问了下我的那个问题,说让他看下,我就将我那个错的代码给他看下,过了十多分钟他就调试出来了,是初始化的问题,他改的不一样:

#include<iostream>
using namespace std;
int maxnum(int a[],int s[],int k,int j,int m){
s[m]=0;
for(int i=k;i<=j;i++){
s[m]+=a[i];
}
return s[m];
}
int main(){
int n,max=0,begin=0,end=0,m=0;
cin>>n;
int *a= new int[n];
for(int i=0;i<n;i++)
cin>>a[i];
int *s= new int[n*n];
for(int k=0;k<n-1;k++){
for(int j=1;j<n;j++,m++){
if(maxnum(a,s,k,j,m)>max){
max=maxnum(a,s,k,j,m);
begin=k;
end=j;
}
}
}
cout<<max<<endl<<"["<<begin+1<<","<<end+1<<"]"<<endl;
return 0;
}

哎~再次受到了打击,这是......闹咋样啊?!!!为什么我的代码就是那样?!为什么呢,我差了什么?思维方式?思路?基础?细心?......


我想成为高手啊,我想成为神犇啊!!!可是第一步就卡住了,不知怎么去前进,怎么去改善!很痛苦~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值