社区讨论
RE求助
P1149[NOIP 2008 提高组] 火柴棒等式参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mlhdha29
- 此快照首次捕获于
- 2026/02/11 09:50 上周
- 此快照最后确认于
- 2026/02/11 10:55 上周
代码:
CPP#include<bits/stdc++.h>
using namespace std;
int main(){
int arr[10]={6,2,5,5,4,5,6,3,7,6},n,ans=0;
cin>>n;
for(int i=0;i<n;i++){
if(i>=10){
int a=arr[i/10];
int b=arr[i%10];
if(a+b<n-4){
for(int j=0;j<n;j++){
if(j>=10){
int c=arr[j/10];
int d=arr[j%10];
int x=arr[(i+j)/10];
int y=arr[(i+j)%10];
if(a+b+c+d+x+y+4==n){
ans++;
if(j!=i){
ans++;
}
}
}else{
int c=arr[j];
if(i+j>=10){
int x=arr[(i+j)/10];
int y=arr[(i+j)%10];
if(a+b+c+x+y+4==n){
ans++;
if(j!=i){
ans++;
}
}
}else{
int x=arr[(i+j)];
if(a+b+c+x+4==n){
ans++;
if(j!=i){
ans++;
}
}
}
}
}
}
}else{
int a=arr[a];
if(a<n-4){
for(int j=i;j<n;j++){
if(j>=10){
int c=arr[j/10];
int d=arr[j%10];
int x=arr[(i+j)/10];
int y=arr[(i+j)%10];
if(a+c+d+x+y+4==n){
ans++;
if(j!=i){
ans++;
}
}
}else{
int c=arr[j];
if(i+j>=10){
int x=arr[(i+j)/10];
int y=arr[(i+j)%10];
if(a+c+x+y+4==n){
ans++;
if(j!=i){
ans++;
}
}
}else{
int x=arr[(i+j)];
if(a+c+x+4==n){
ans++;
if(j!=i){
ans++;
}
}
}
}
}
}
}
}
cout<<ans;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...