Skip to main content
We’ve updated our Terms of Service. A new AI Addendum clarifies how Stack Overflow utilizes AI interactions.
Code Golf

Return to Answer

Included golfing suggestion.
Source Link
Jonathan Frech
  • 7.5k
  • 1
  • 23
  • 44

C (gcc), (削除) 127 (削除ここまで)126(削除) 126 (削除ここまで) 123 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<m;!p&&printfx=~m;X=x++<m;p||printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l-++j]*X;}

Try it online! Try it online!

Explanation


# Explanation # [C (gcc)], 517 bytes
x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;x++<m; x=~m;X=x++<m; // loop through all values x in [-m, m], prime X
 !p&&printfp||printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(X=1,p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l-++j]*X;} // build polynomial

Try it online!

C (gcc), (削除) 127 (削除ここまで)126 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<m;!p&&printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l-++j]*X;}

Try it online!

Explanation

x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;x++<m;  // loop through all values x in [-m, m]
 !p&&printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(X=1,p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l-++j]*X;} // build polynomial

C (gcc), (削除) 127 (削除ここまで)(削除) 126 (削除ここまで) 123 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;X=x++<m;p||printf("%d,",x))for(p=j=0;j<l;X*=x)p+=A[l-++j]*X;}

Try it online!


# Explanation # [C (gcc)], 517 bytes
x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;X=x++<m; // loop through all values x in [-m, m], prime X
 p||printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l-++j]*X;} // build polynomial

Try it online!

Golfing suggestion.
Source Link
Jonathan Frech
  • 7.5k
  • 1
  • 23
  • 44

C (gcc), 127(削除) 127 (削除ここまで)126 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<m;!p&&printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l+~j++]*X;p+=A[l-++j]*X;}

Try it online! Try it online!

Explanation

x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;x++<m; // loop through all values x in [-m, m]
 !p&&printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(X=1,p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l+~j++]*X;p+=A[l-++j]*X;} // build polynomial

C (gcc), 127 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<m;!p&&printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l+~j++]*X;}

Try it online!

Explanation

x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;x++<m; // loop through all values x in [-m, m]
 !p&&printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(X=1,p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l+~j++]*X;} // build polynomial

C (gcc), (削除) 127 (削除ここまで)126 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<m;!p&&printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l-++j]*X;}

Try it online!

Explanation

x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;x++<m; // loop through all values x in [-m, m]
 !p&&printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(X=1,p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l-++j]*X;} // build polynomial
Added explanation.
Source Link
Jonathan Frech
  • 7.5k
  • 1
  • 23
  • 44

C (gcc), 129127 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<2*m;x=~m;x++<m;!p&&printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l+~j++]*X;}

Try it online! Try it online!

Explanation

x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;x++<m; // loop through all values x in [-m, m]
 !p&&printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(X=1,p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l+~j++]*X;} // build polynomial

C (gcc), 129 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<2*m;!p&&printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l+~j++]*X;}

Try it online!

C (gcc), 127 bytes

x,X,j,m,p;f(A,l)int*A;{for(m=j=0;j<l;m+=abs(A[j++]));for(x=~m;x++<m;!p&&printf("%d,",x))for(X=1,p=j=0;j<l;X*=x)p+=A[l+~j++]*X;}

Try it online!

Explanation

x,X,j,m,p; // global integer variables
f(A,l)int*A;{ // define function, takes in integer array pointer and length
 for(m=j=0;j<l;m+=abs(A[j++])); // loop through array, sum up absolute values
 for(x=~m;x++<m; // loop through all values x in [-m, m]
 !p&&printf("%d,",x)) // at loop's end, print x value if polynomial value is zero
 for(X=1,p=j=0;j<l;X*=x) // loop through coefficients
 p+=A[l+~j++]*X;} // build polynomial
Source Link
Jonathan Frech
  • 7.5k
  • 1
  • 23
  • 44
Loading

AltStyle によって変換されたページ (->オリジナル) /