为什么才60分啊,没找到哪里错了

P1149 [NOIP2008 提高组] 火柴棒等式

你看,1111只需要8根小棒,还是会有可能组成等式的,说白了就是不能打表,建议你用一个函数。 @[Rhss](/user/684890) 给你看一下我A的代码,有点丑哈 ```cpp #include<iostream> using namespace std; int num[20]={6,2,5,5,4,5,6,3,7,6},n,ans; int fj(int i){ int s,ans=0; if(i==0){ ans+=6; } while(i){ ans+=num[i%10]; i/=10; } return ans; } int main(){ cin>>n; n-=4; for(int i=0;i<=1111;i++){ for(int j=0;j<=1111;j++){ int k=i+j; if(fj(k)+fj(i)+fj(j)==n){ ans++; } } } cout<<ans; return 0; } ```
by _ouhsnaijgnat_ @ 2022-11-04 07:56:31


注意,循环前面我的 $n$ 已经减了4
by _ouhsnaijgnat_ @ 2022-11-04 07:58:03


@[_ouhsnaijgnat_](/user/571435) 懂了,原来边界可以到1111,谢谢大佬
by Rhss @ 2022-11-04 09:01:00


|