缓慢的setfill和setw函数

最近在做数据结构的题,https://pta.patest.cn/pta/test/1342/exam/4/question/19210 这个题怎么写都超时,然后就从各个角度抠时间。

原因找遍,估计是setfill和setw函数占用时间比较多,改为printf后立马就通过了。

例如:

        cout<<setfill('0')<<setw(5);
        cout<<A[i].Addr;
        cout<<setw(0);
        cout<<' '<<A[i].Data<<' ';
        if (A[i].NextAddr!=-1) cout<<setfill('0')<<setw(5);
        cout<<A[i].NextAddr<<endl;

(这两个函数还需要#include <iomanip>的支持)
改为

printf("%05d %d %05d\n",B[i].Addr,B[i].Data,B[i].NextAddr);

耗时大大缩短。

想用VS的性能向导测耗时,但我的VS2010出bug用不了,新版的要WIN10系统,懒得换了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值