总结007—本周文章及心得

这周坚持每天看文章,朝夕的ACM笔记中的数据结构和图论共13篇,外加这13篇中涉及到的部分问题(大部分问题都不会做),还看了几篇剪枝算法类的文章,另外大部分看的是一些带有一些知识性类的文章(不低于20篇)(这种文章是真的好),做了洛谷和书上的一些基础类的题,另外递归回溯类的题除去上课讲的外还做了书上和洛谷上的一些。

我感觉到每天都在变强😀

这周Codeforces上的比赛真是哎,第二题知道怎么做,但一直在改代码(改了近100分钟(一共120分钟)),脑子里一直有各种思路,都想把前一种思路给去除掉,一直改改改……,最后提交时竟还TM超时了,于是痛定思痛,下次一定要想好再写,(真是犯了错才知道改啊)别一看到题就进行代码操作!!!同时做题时也要注意时间复杂度,注意for循环。

读递归回溯类的代码时,如果不知是怎么运行的可以在某一段下方加上一句话,以下代码代表自己添加的代码(和题目无关),可以看程序是怎样运行的。(可以在注释前输入自己能明白的代码)(虽然这个思想甚至都不能称之为思想但我竟然想了很久,罪过罪过。)

int search(int s,int t)
{
	cout<<3<<endl;//注******8
    int i;
    cout<<t<<"#"<<endl;//注******8
    cout<<a[5]<<endl;//注******8
    for (i=a[t-1];i<=s;i++)
    {
    	cout<<4<<"___"<<t <<endl;//注******8
     if (i<n)
      {
      	cout<<i<<"******"<<endl;
       a[t]=i;
       s-=i; 
       cout<<s<<"!!!!"<<endl;//注 ******8
       cout<<t<<"#############"<<endl;//注******8
       if (s==0) print(t); //当s=0时,拆分结束输出结果
         else search(s,t+1); //当s>0时,继续递归
         cout<<1<<endl;//注 ******8
       s+=i; //回溯:加上拆分的数,以便产分所有可能的拆分
       cout<<s<<"*"<<endl;//注******8
       cout<<t<<"$"<<endl;//注******8
      }
    }
}

最大公因数(虽然会写但这种你可能没见过)(最小公倍数的看了很多篇没找到类似写法的)

#include<iostream>
#include<algorithm>//__gcd头文件 
using namespace std;
int main()
{
	int x,y;
	cin>>x>>y;
	int num=__gcd(x,y);//注意:__是英文输入状态下两个下划线,是两个不是一个 
	cout<<num<<endl;
	
	return 0;
}

这周感觉最大的收获就是感觉以前看的文章和代码好像没这么难了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值