# 0001, 2024-11-02 14:00:09, PPPxxxxxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n){ // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(int k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
}
long long W(int n){ // Wedderburn–Etherington Number
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0002, 2024-11-02 14:00:23, PPPxxx---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n){ // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(int k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
return sum;
}
long long W(int n){ // Wedderburn–Etherington Number
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0003, 2024-11-02 14:03:28, PPPxxx---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n){ // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(long long k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
return sum;
}
long long W(int n){ // Wedderburn–Etherington Number
return 0;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0004, 2024-11-02 14:03:44, PPPxxx---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n){ // Schroder Number
int sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(int k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
return sum;
}
long long W(int n){ // Wedderburn–Etherington Number
return 0;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0005, 2024-11-02 14:08:27, PPPxxx---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(long long k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0006, 2024-11-02 14:10:40, PPPxxx---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
if(n>=2)for(long long k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0007, 2024-11-02 14:20:06, PPPxxx---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(int i = 1 ; i <= n-2 ; i++){
sum += S(i) * S(n-i-1);
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
}
return 0;
} | # 0008, 2024-11-02 14:26:51, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n == 0)return 1;
if(n == 1)return 2;
for(int i = 1 ; i <= n-2 ; i ++){
sum += S(i) + S(n - i - 1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n%2 == 0)
{
long long sum2 = 0;
for(int i = 1 ; i <= n/2-1 ; i++)sum2+= W(i)*W(n-i);
return W(n/2)*(W(n/2)+1)/2+sum2;
}
if(n%2 == 1)
{ long long sum1 = 0;
for(int i = 0 ; i <= n+1/2 - 1 ; i++)sum1+= W(i)*W(n-i);
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0009, 2024-11-02 14:27:25, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n == 0)return 1;
if(n == 1)return 2;
for(int i = 1 ; i <= n-2 ; i ++){
sum += S(i) * S(n - i - 1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n%2 == 0)
{
long long sum2 = 0;
for(int i = 1 ; i <= n/2-1 ; i++)sum2+= W(i)*W(n-i);
return W(n/2)*(W(n/2)+1)/2+sum2;
}
if(n%2 == 1)
{ long long sum1 = 0;
for(int i = 0 ; i <= n+1/2 - 1 ; i++)sum1+= W(i)*W(n-i);
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0010, 2024-11-02 14:32:18, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n == 0)return 1;
if(n == 1)return 2;
for(int i = 1 ; i <= n-2 ; i ++){
sum += S(i) * S(n - i - 1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n%2 == 0)
{
long long sum2 = W(n/2)*(W(n/2)+1)/2;
for(int i = 1 ; i <= n/2-1 ; i++)sum2+= W(i)*W(n-i);
return sum2;
}
if(n%2 == 1)
{ long long sum1 = 0;
for(int i = 0 ; i <= n+1/2 - 1 ; i++)sum1+= W(i)*W(n-i);
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0011, 2024-11-02 14:41:32, PPPxxxPPPx (60%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n){ // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(long long k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
return sum;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
long long sum2 = W(n/2)*(W(n/2)+1)/2;
long long sum1 = 0;
if(n%2 == 0)
{
for(int i = 1 ; i <= n/2-1 ; i++)sum2+= W(i)*W(n-i);
return sum2;
}
if(n%2 == 1)
{
for(int i = 1 ; i <= (n+1)/2 - 1 ; i++)sum1+= W(i)*W(n-i);
return sum1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0012, 2024-11-02 14:41:48, PPPxxxPxxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n){ // Schroder Number
long long sum = 3*S(n-1);
if(n == 0)return 1;
if(n == 1) return 2;
for(long long k = 1 ; k <= n-2 ; k++){
sum +=S(k) * S(n-k-1);
}
return sum;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
long long sum2 = W(n/2)*(W(n/2)+1)/2;
long long sum1 = 0;
if(n%2 == 0)
{
for(int i = 1 ; i <= n/2-1 ; i++)sum2+= W(i)*W(n-i);
return sum2;
}
if(n%2 == 1)
{
for(int i = 0 ; i <= (n+1)/2 - 1 ; i++)sum1+= W(i)*W(n-i);
return sum1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0013, 2024-11-02 14:42:07, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n == 0)return 1;
if(n == 1)return 2;
for(int i = 1 ; i <= n-2 ; i ++){
sum += S(i) * S(n - i - 1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n%2 == 0)
{
long long sum2 = W(n/2)*(W(n/2)+1)/2;
for(int i = 1 ; i <= n/2-1 ; i++)sum2+= W(i)*W(n-i);
return sum2;
}
if(n%2 == 1)
{ long long sum1 = 0;
for(int i = 1 ; i <= n+1/2 - 1 ; i++)sum1+= W(i)*W(n-i);
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0014, 2024-11-02 14:42:27, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n<k)return 0;
if(k == 0)return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n == 0)return 1;
if(n == 1)return 2;
for(int i = 1 ; i <= n-2 ; i ++){
sum += S(i) * S(n - i - 1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n%2 == 0)
{
long long sum2 = W(n/2)*(W(n/2)+1)/2;
for(int i = 1 ; i <= n/2-1 ; i++)sum2+= W(i)*W(n-i);
return sum2;
}
if(n%2 == 1)
{ long long sum1 = 0;
for(int i = 1 ; i <= (n+1)/2 - 1 ; i++)sum1+= W(i)*W(n-i);
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0015, 2024-11-02 13:20:44, PPP------- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
// Schroder Number
return 0;
}
long long W(int n) {
// Wedderburn–Etherington Number
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0016, 2024-11-02 13:27:10, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
// Wedderburn–Etherington Number
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0017, 2024-11-02 13:33:47, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n=0) return 0;
if(n=1) return 1;
if(n%2 == 0) {
long long int result = (W(n/2)*W((n/2)+1))/2;
for(int i=1; i <= ((n/2)-1); i++) {
result += W(i)*W(n-i);
}
return result;
}
if(n%2 == 1) {
long long int result = 0;
for(int i=1; i<= (n+1)/2 - 1; i++) {
result += W(i)*W(n-i);
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0018, 2024-11-02 13:36:06, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0) {
long long int result = (W(n/2)*W((n/2)+1))/2;
for(int i=1; i <= ((n/2)-1); i++) {
result += W(i)*W(n-i);
}
return result;
}
if(n%2 == 1) {
long long int result = 0;
for(int i=1; i<= (n+1)/2 - 1; i++) {
result += W(i)*W(n-i);
}
return result;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0019, 2024-11-02 13:37:39, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0) {
long long int result = (W(n/2)*W((n/2)+1))/2;
for(int i=1; i <= ((n/2)-1); i++) {
result += W(i)*W(n-i);
}
return result;
}
if(n%2 == 1) {
long long int result2 = 0;
for(int i=1; i<= (n+1)/2 - 1; i++) {
result2 += W(i)*W(n-i);
}
return result2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0020, 2024-11-02 13:40:24, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2 == 0) {
long long int result = (W(n/2)*W((n/2)+1))/2;
for(int i=1; i <= ((n/2)-1); i++) {
result += W(i)*W(n-i);
}
return result;
}
else if(n%2 == 1) {
long long int result2 = 0;
for(int i=1; i<= ((n+1)/2)-1; i++) {
result2 += W(i)*W(n-i);
}
return result2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0021, 2024-11-02 13:44:07, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
/*
if(n%2 == 0) {
long long int result1 = (W(n/2)*W((n/2)+1))/2;
for(int i=1; i <= ((n/2)-1); i++) {
result1 += W(i)*W(n-i);
}
return result1;
}
if(n%2 == 1) {
long long int result2 = 0;
for(int i=1; i<= ((n+1)/2)-1; i++) {
result2 += W(i)*W(n-i);
}
return result2;
}
*/
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0022, 2024-11-02 13:46:53, PPPPPPPx-x (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0) {
long long int result1 = (W(n/2)*W((n/2)+1))/2;
//for(int i=1; i <= ((n/2)-1); i++) {
// result1 += W(i)*W(n-i);
//}
return result1;
}
if(n%2 == 1) {
long long int result2 = 0;
//for(int i=1; i<= ((n+1)/2)-1; i++) {
// result2 += W(i)*W(n-i);
//}
return result2;
}
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0023, 2024-11-02 13:48:04, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0) {
long long int result1 = W(n/2);
//for(int i=1; i <= ((n/2)-1); i++) {
// result1 += W(i)*W(n-i);
//}
return result1;
}
if(n%2 == 1) {
long long int result2 = 0;
//for(int i=1; i<= ((n+1)/2)-1; i++) {
// result2 += W(i)*W(n-i);
//}
return result2;
}
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0024, 2024-11-02 13:49:45, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0) {
long long int result1 = W(n/2);
result1 *= W(n/2)+1;
result1 /= 2;
for(int i=1; i <= ((n/2)-1); i++) {
result1 += W(i)*W(n-i);
}
return result1;
}
if(n%2 == 1) {
long long int result2 = 0;
//for(int i=1; i<= ((n+1)/2)-1; i++) {
// result2 += W(i)*W(n-i);
//}
return result2;
}
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0025, 2024-11-02 13:50:43, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long int result;
result = 3*S(n-1);
for(int k=1; k<=(n-2); k++) {
result += S(k)*S(n-k-1);
}
return result;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0) {
long long int result1 = W(n/2);
result1 *= W(n/2)+1;
result1 /= 2;
for(int i=1; i <= ((n/2)-1); i++) {
result1 += W(i)*W(n-i);
}
return result1;
}
if(n%2 == 1) {
long long int result2 = 0;
for(int i=1; i<= ((n+1)/2)-1; i++) {
result2 += W(i)*W(n-i);
}
return result2;
}
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0026, 2024-11-02 09:20:03, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
if(k<1 && k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
double sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2 == 0 && n>0){
double sum = 0;
int task = (n/2);
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
double left = (W(n/2)*W((n/2)+1))/2;
return left+sum;
}else if(n%2 == 1 && n >1){
double sum2 = 0;
int task2 = (n+1)/2;
for (int i = 1; i <= task2-1; i++)
{
sum2 += (W(i)*W(n-i));
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0027, 2024-11-02 09:20:48, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
if(k<1 && k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2 == 0 && n>0){
float sum = 0;
int task = (n/2);
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
float left = (W(n/2)*W((n/2)+1))/2;
return left+sum;
}else if(n%2 == 1 && n >1){
float sum2 = 0;
int task2 = (n+1)/2;
for (int i = 1; i <= task2-1; i++)
{
sum2 += (W(i)*W(n-i));
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0028, 2024-11-02 10:10:40, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2 == 0 && n>0){
float sum = 0;
int task = (n/2);
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
float left = (W(n/2)*W((n/2)+1))/2;
return left+sum;
}else if(n%2 == 1 && n >1){
float sum2 = 0;
int task2 = (n+1)/2;
for (int i = 1; i <= task2-1; i++)
{
sum2 += (W(i)*W(n-i));
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0029, 2024-11-02 10:13:26, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2 == 0 && n>0){
float sum = 0;
int task = (n/2);
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
float left = (W(n/2)*W((n/2)+1))/2;
return left+sum;
}else if(n%2 == 1 && n >1){
float sum2 = 0;
int task2 = (n+1)/2;
for (int i = 1; i <= task2-1; i++)
{
sum2 += (W(i)*W(n-i));
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0030, 2024-11-02 10:58:06, Compilation error (0%)
#include <iostream>
using namespace std;
long long W[1000000];
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
int task;
if(n%2 == 0){
task = (n/2);
}else{
task = (n+1)/2;
}
double sum = 0;
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
if(n%2 == 0 && n>0){
float left = (W(n/2)*(W(n/2)+1))/2;
return left+sum;
}else{
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0031, 2024-11-02 10:59:22, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
int task;
if(n%2 == 0){
task = (n/2);
}else{
task = (n+1)/2;
}
double sum = 0;
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
if(n%2 == 0 && n>0){
float left = (W(n/2)*(W(n/2)+1))/2;
return left+sum;
}else{
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0032, 2024-11-02 11:00:49, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
int task;
if(n%2 == 0){
task = (n/2);
}else{
task = (n+1)/2;
}
double sum = 0;
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
if(n%2 == 0 && n>0){
double left = (W(n/2)*(W(n/2)+1))/2;
return left+sum;
}else{
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0033, 2024-11-02 11:04:32, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
return (3*S(n-1))+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
int task;
if(n%2 == 0){
task = (n/2);
}else{
task = (n+1)/2;
}
double sum = 0;
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
if(n%2 == 0 && n>0){
double left = (W(n/2)*(W(n/2)+1))/2;
return left+sum;
}else{
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0034, 2024-11-02 11:05:32, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
float sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += (S(i)*S(n-i-1));
}
double left = 3*S(n-1);
return left+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
int task;
if(n%2 == 0){
task = (n/2);
}else{
task = (n+1)/2;
}
double sum = 0;
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
if(n%2 == 0 && n>0){
double left = (W(n/2)*(W(n/2)+1))/2;
return left+sum;
}else{
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0035, 2024-11-02 11:07:02, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if( k> n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n==1){
return 2;
}
long long sum = 0;
for (int k = 1; k <= n-2; k++)
{
sum += (S(k)*S(n-k-1));
}
double left = 3*S(n-1);
return left+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
int task;
if(n%2 == 0){
task = (n/2);
}else{
task = (n+1)/2;
}
double sum = 0;
for (int i = 1; i <= task-1; i++)
{
sum += (W(i)*W(n-i));
}
if(n%2 == 0 && n>0){
double left = (W(n/2)*(W(n/2)+1))/2;
return left+sum;
}else{
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0036, 2024-11-02 09:26:42, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k)
}
long long S(int n) {
int a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<=n;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=n-2;k++) {
a[i]+=a[k]*a[i-k-1];
}
}
return a[n];
}
long long W(int n) {
int a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<n;i++) {
if(i%2==0) {
a[i]=(a[i/2]*(a[i/2]+1))/2;
for(int j=1;j<=i/2-1;j++) {
a[i]+=a[j]*a[i-j];
}
}else {
for(int j=1;j<=(i+1)/2-1;j++) {
a[i]+=a[j]*a[i-j]
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0037, 2024-11-02 09:26:59, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
int a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<=n;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=n-2;k++) {
a[i]+=a[k]*a[i-k-1];
}
}
return a[n];
}
long long W(int n) {
int a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<n;i++) {
if(i%2==0) {
a[i]=(a[i/2]*(a[i/2]+1))/2;
for(int j=1;j<=i/2-1;j++) {
a[i]+=a[j]*a[i-j];
}
}else {
for(int j=1;j<=(i+1)/2-1;j++) {
a[i]+=a[j]*a[i-j];
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0038, 2024-11-02 09:32:20, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
int a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<=n;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=n-2;k++) {
if(i-k-1>=0) {
a[i]+=a[k]*a[i-k-1];
}
}
}
return a[n];
}
long long W(int n) {
int a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<n;i++) {
if(i%2==0) {
a[i]=(a[i/2]*(a[i/2]+1))/2;
for(int j=1;j<=i/2-1;j++) {
a[i]+=a[j]*a[i-j];
}
}else {
for(int j=1;j<=(i+1)/2-1;j++) {
a[i]+=a[j]*a[i-j];
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0039, 2024-11-02 09:33:17, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
int a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<=n;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=n-2;k++) {
if(i-k-1>=0) {
a[i]+=a[k]*a[i-k-1];
}
}
}
return a[n];
}
long long W(int n) {
int a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<=n;i++) {
if(i%2==0) {
a[i]=(a[i/2]*(a[i/2]+1))/2;
for(int j=1;j<=i/2-1;j++) {
a[i]+=a[j]*a[i-j];
}
}else {
for(int j=1;j<=((i+1)/2-1);j++) {
a[i]+=a[j]*a[i-j];
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0040, 2024-11-02 10:04:41, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<=n;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=n-2;k++) {
a[i]+=a[k]*a[i-k-1];
}
}
return a[n];
}
long long W(int n) {
long long a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<=n;i++) {
if(i%2==0) {
a[i]=(a[i/2]*(a[i/2]+1))/2;
for(int j=1;j<=i/2-1;j++) {
a[i]+=a[j]*a[i-j];
}
}else {
for(int j=1;j<=((i+1)/2-1);j++) {
a[i]+=a[j]*a[i-j];
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0041, 2024-11-02 10:15:34, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<n+1;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=i-2;k++) {
a[i]+=a[k]*a[(i-1)-k];
}
}
return a[n];
}
long long W(int n) {
long long a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<n;i++) {
if(i%2==0) {
a[i]=(a[i/2]*(a[i/2]+1))/2;
for(int j=1;j<=(i/2-1);j++) {
a[i]+=a[j]*a[i-j];
}
}else {
for(int j=1;j<=((i+1)/2-1);j++) {
a[i]+=a[j]*a[i-j];
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0042, 2024-11-02 10:47:04, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<n+1;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=i-2;k++) {
a[i]+=a[k]*a[(i-1)-k];
}
}
return a[n];
}
long long W(int n) {
long long a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<=n;i++) {
if(i%2==0) {
a[i]=(a[i/2]*(a[i/2]+1))/2;
for(int j=1;j<=(i/2-1);j++) {
a[i]+=a[j]*a[i-j];
}
}else {
int k=(i+1)/2;
for(int j=1;j<=k-1;j++) {
a[i]+=a[j]*a[i-j];
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0043, 2024-11-02 10:48:23, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<n+1;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=i-2;k++) {
a[i]+=a[k]*a[(i-1)-k];
}
}
return a[n];
}
long long W(int n) {
long long a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<=n;i++) {
if(i%2==0) {
int k=i/2;
a[i]=(a[k]*(a[k]+1))/2;
for(int j=1;j<=k-1;j++) {
a[i]+=a[j]*a[i-j];
}
continue;
}else {
int k=(i+1)/2;
for(int j=1;j<=k-1;j++) {
a[i]+=a[j]*a[i-j];
}
continue;
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0044, 2024-11-02 11:13:14, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long a[n+1];
a[0]=1;
a[1]=2;
for(int i=2;i<n+1;i++) {
a[i]=3*a[i-1];
for(int k=1;k<=i-2;k++) {
a[i]+=a[k]*a[(i-1)-k];
}
}
return a[n];
}
long long W(int n) {
long long a[n+1];
a[0]=0;
a[1]=1;
for(int i=2;i<=n;i++) {
if(i%2==0) {
int x=i/2;
a[i]=(a[x]*(a[x]+1))/2;
for(int j=1;j<=(x-1);j++) {
a[i]+=a[j]*a[i-j];
}
}else {
a[i]=0;
int k=(i+1)/2;
for(int j=1;j<=k-1;j++) {
a[i]+=a[j]*a[i-j];
}
}
}
return a[n];
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0045, 2024-11-02 11:52:15, ---xxxxxx- (0%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k=0){
return(1);
}if(k>1&k<=n){
T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0046, 2024-11-02 11:53:39, ---xxxxxx- (0%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k=0){
return(1);
}if(k>1&k<=n){
return(T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0047, 2024-11-02 11:54:23, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k==0){
return(1);
}if(k>1&k<=n){
return(T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0048, 2024-11-02 11:58:41, PPP-PP---- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k==0){
return(1);
}if(k>1&k<=n){
return(T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
long long x=0;
for(int k=1;k<=n-2;++k){
x+=S(k)*S(n-k-1);
}
return( (3*S(n-1))+x );
}
if(n=0){
return(1);
}
if(n=1){
return(2);
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0049, 2024-11-02 12:05:26, PPP-PP---- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k==0){
return(1);
}if(k>1&k<=n){
return(T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
long long x=0;
for(int k=1;k<=n-2;++k){
x+=S(k)*S(n-k-1);
}
return( (3*S(n-1))+x );
}
if(n=0){
return(1);
}
if(n=1){
return(2);
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n=0){
return(0);
}
if(n=1){
return(1);
}
if(n%2==0){
long long x=0;
for(int i=1;i<=(n/2) -1;++i){
x+=W(i)*W(n-i);
}
return( (W(n/2)*(W(n/2)+1))/2+x );
}
if(n%2!=0){
long long x=0;
for(int i=1;i<=((n+1)/2 )-1;++i){
x+=W(i)*W(n-i);
}
return( x );
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0050, 2024-11-02 12:05:41, PPP-PP---- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k==0){
return(1);
}if(k>1&k<=n){
return(T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
long long x=0;
for(int k=1;k<=n-2;++k){
x+=S(k)*S(n-k-1);
}
return( (3*S(n-1))+x );
}
if(n=0){
return(1);
}
if(n=1){
return(2);
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n=0){
return(0);
}
if(n=1){
return(1);
}
if(n%2==0){
long long x=0;
for(int i=1;i<=(n/2) -1;++i){
x+=W(i)*W(n-i);
}
return( (W(n/2)*(W(n/2)+1))/2+x );
}
if(n%2!=0){
long long x=0;
for(int i=1;i<=((n+1)/2 )-1;++i){
x+=W(i)*W(n-i);
}
return( x );
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0051, 2024-11-02 12:07:53, PPP-PP---- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k==0){
return(1);
}if(k>1&k<=n){
return(T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
long long x=0;
for(int k=1;k<=n-2;++k){
x+=S(k)*S(n-k-1);
}
return( (3*S(n-1))+x );
}
if(n=0){
return(1);
}
if(n=1){
return(2);
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n=0){
return(0);
}
if(n=1){
return(1);
}
if(n%2==0){
long long x=0;
for(int i=1;i<=(n/2) -1;++i){
x+=W(i)*W(n-i);
}
return( ((W(n/2)*(W(n/2)+1))/2)+x );
}
if(n%2!=0){
long long x=0;
for(int i=1;i<=((n+1)/2 )-1;++i){
x+=W(i)*W(n-i);
}
return( x );
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0052, 2024-11-02 12:10:51, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){
return(0);
}
if(k==0){
return(1);
}if(k>1&k<=n){
return(T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
}
long long S(int n)
{ // Schroder Number
if(n>=2){
long long x=0;
for(int k=1;k<=n-2;++k){
x+=S(k)*S(n-k-1);
}
return( (3*S(n-1))+x );
}
if(n==0){
return(1);
}
if(n==1){
return(2);
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n==0){
return(0);
}
if(n==1){
return(1);
}
if(n%2==0){
long long x=0;
for(int i=1;i<=(n/2) -1;++i){
x+=W(i)*W(n-i);
}
return( ((W(n/2)*(W(n/2)+1))/2)+x );
}
if(n%2!=0){
long long x=0;
for(int i=1;i<=((n+1)/2 )-1;++i){
x+=W(i)*W(n-i);
}
return( x );
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0053, 2024-11-02 09:30:25, x--PPPPPP- (60%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long T(int n, int k) { // Schroder Triangle
if(k==1){
return 1;
}
if(k>n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0054, 2024-11-02 09:32:51, Compilation error (0%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0055, 2024-11-02 09:33:30, ---PPPPPP- (60%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long T(int n, int k) { // Schroder Triangle
if(k==1){
return 1;
}
if(k>n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
//cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0056, 2024-11-02 09:33:54, x-----PPP- (30%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long T(int n, int k) { // Schroder Triangle
if(k==1){
return 1;
}
if(k>n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
//cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0057, 2024-11-02 09:34:10, x--PPP---- (30%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long T(int n, int k) { // Schroder Triangle
if(k==1){
return 1;
}
if(k>n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
//cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0058, 2024-11-02 09:40:44, x--PPPPPP- (60%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long T(int n, int k) { // Schroder Triangle
if(k==1){
return 1;
}
if(k>n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0059, 2024-11-02 09:41:49, x--PPPPPP- (60%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long T(int n, int k) { // Schroder Triangle
long long sum = 0;
if(k==1){
return 1;
}
if(k>n){
return 0;
}
sum+=T(n,k-1);
sum+=T(n-1,k-1);
sum+=T(n-1,k);
return sum;
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0060, 2024-11-02 10:16:17, PPPPPPPPPP (100%)
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define first F
#define second S
long long T(int n, int k) { // Schroder Triangle
long long sum = 0;
if(k==0){
return 1;
}
if(k>n){
return 0;
}
sum+=T(n,k-1);
sum+=T(n-1,k-1);
sum+=T(n-1,k);
return sum;
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(int i=1;i<=n-2;i++){
sum+= S(i)*S(n-i-1);
}
return sum + (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum + ((W(n/2)*(W(n/2)+1))/2);
}else{
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0061, 2024-11-02 10:24:08, TTTPPP-TTT (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n==0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n, k-1) +T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) {
return 1;
}
else if (n==1) {
return 2;
}
int sum=0;
for (int k=1; k<=n-2; k++) {
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) {
return 1;
}
if (n%2 == 0) {
int sum=0;
for (int k=1; k<=(n/2)-1; k++) {
sum += W(k)*W(k-1);
}
return ((W(n/2) * W((n/2) + 1))/2) + sum;
} else {
int sum=0;
for (int k=1; k<=((n+1)/2)-1; k++) {
sum += W(k)*W(k-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0062, 2024-11-02 10:25:49, xxxPPP---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n==0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n, k-1) +T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) {
return 1;
}
else if (n==1) {
return 2;
}
int sum=0;
for (int k=1; k<=n-2; k++) {
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) {
return 1;
}
if (n%2 == 0) {
int sum=0;
for (int k=1; k<=(n/2)-1; k++) {
sum += W(k)*W(k-1);
}
return ((W(n/2) * W((n/2)-1))/2) + sum;
} else {
int sum=0;
for (int k=1; k<=((n+1)/2)-1; k++) {
sum += W(k)*W(k-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0063, 2024-11-02 10:27:20, xxxPPP---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n==0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n, k-1) +T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) {
return 1;
}
else if (n==1) {
return 2;
}
int sum=0;
for (int k=1; k<=n-2; k++) {
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) {
return 1;
}
if (n%2 == 0) {
int sum=0;
for (int k=1; k<=(n/2)-1; k++) {
sum += W(k)*W(k-1);
}
return ((W(n/2) * W(n/2)+1)) + sum;
} else {
int sum=0;
for (int k=1; k<=((n+1)/2)-1; k++) {
sum += W(k)*W(k-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0064, 2024-11-02 10:28:53, xxTPPP---x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n==0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n, k-1) +T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) {
return 1;
}
else if (n==1) {
return 2;
}
int sum=0;
for (int k=1; k<=n-2; k++) {
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) {
return 1;
}
if (n%2 == 0) {
int sum=0;
for (int k=1; k<=(n/2)-1; k++) {
sum += W(k)*W(n-k);
}
return (((W(n/2) * W(n/2)+1))/2) + sum;
} else {
int sum=0;
for (int k=1; k<=((n+1)/2)-1; k++) {
sum += W(k)*W(n-k);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0065, 2024-11-02 10:31:17, xxxPPP-PPx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n==0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n, k-1) +T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) {
return 1;
}
else if (n==1) {
return 2;
}
int sum=0;
for (int k=1; k<=n-2; k++) {
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) {
return 1;
}
if (n%2 == 0) {
int sum=0;
for (int k=1; k<=(n/2)-1; k++) {
sum += W(k)*W(n-k);
}
return (((W(n/2) * (W(n/2)+1)))/2) + sum;
} else {
int sum=0;
for (int k=1; k<=((n+1)/2)-1; k++) {
sum += W(k)*W(n-k);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0066, 2024-11-02 10:31:45, xxxPPPPPPx (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n==0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n, k-1) +T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) {
return 1;
}
else if (n==1) {
return 2;
}
int sum=0;
for (int k=1; k<=n-2; k++) {
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) {
return n;
}
if (n%2 == 0) {
int sum=0;
for (int k=1; k<=(n/2)-1; k++) {
sum += W(k)*W(n-k);
}
return (((W(n/2) * (W(n/2)+1)))/2) + sum;
} else {
int sum=0;
for (int k=1; k<=((n+1)/2)-1; k++) {
sum += W(k)*W(n-k);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0067, 2024-11-02 10:33:26, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n, k-1) +T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) {
return 1;
}
else if (n==1) {
return 2;
}
int sum=0;
for (int k=1; k<=n-2; k++) {
sum += S(k)*S(n-k-1);
}
return (3*S(n-1)) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) {
return n;
}
if (n%2 == 0) {
int sum=0;
for (int k=1; k<=(n/2)-1; k++) {
sum += W(k)*W(n-k);
}
return (((W(n/2) * (W(n/2)+1)))/2) + sum;
} else {
int sum=0;
for (int k=1; k<=((n+1)/2)-1; k++) {
sum += W(k)*W(n-k);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0068, 2024-11-02 09:16:02, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k > n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0069, 2024-11-02 09:28:22, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k > n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
int x = 0 ;
for(int k=1; k<n-1 ; k++ ){
x = x + S(k)*S(n-k-1) ;
}
return x + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0070, 2024-11-02 09:34:53, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k > n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
int x = 0 ;
for(int k=1; k<n-1 ; k++ ){
x = x + S(k)*S(n-k-2) ;
}
return x + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0071, 2024-11-02 09:35:06, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k > n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
int x = 0 ;
for(int k=1; k<n-1 ; k++ ){
x = x + S(k)*S(n-k-1) ;
}
return x + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0072, 2024-11-02 09:39:35, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k > n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
int x = 0 ;
for(int k=1; k<n-1 ; k++ ){
x = x + (S(k)*S(n-k-1)) ;
}
return x + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 1 ;
if(n==1) return 2 ;
if(n%2 == 0) {
int x = 0 ;
int a = ( W(n/2) * (W(n/2)+1) ) /2 ;
for(int i=1 ; i< (n/2) ; i++){
x = x + (W(i)*W(n-i)) ;
}
return a + x ;
}
if(n%2 != 0){
int y = 0 ;
for(int i=1; i<(n+1)/2 ; i++){
y = y + W(i)*W(n-i) ;
}
return y ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0073, 2024-11-02 09:40:20, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k > n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
int x = 0 ;
for(int k=1; k<n-1 ; k++ ){
x = x + (S(k)*S(n-k-1)) ;
}
return x + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 1 ;
if(n==1) return 2 ;
if(n%2 == 0) {
int x = 0 ;
int a = ( W(n/2) * (W(n/2)+1) ) /2 ;
for(int i=1 ; i< (n/2) ; i++){
x = x + (W(i)*W(n-i)) ;
}
return a + x ;
}
if(n%2 != 0){
int y = 0 ;
for(int i=1; i<(n+1)/2 ; i++){
y = y + W(i)*W(n-i) ;
}
return y ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0074, 2024-11-02 09:40:37, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k > n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
int x = 0 ;
for(int k=1; k<n-1 ; k++ ){
x = x + (S(k)*S(n-k-1)) ;
}
return x + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0 ;
if(n==1) return 1 ;
if(n%2 == 0) {
int x = 0 ;
int a = ( W(n/2) * (W(n/2)+1) ) /2 ;
for(int i=1 ; i< (n/2) ; i++){
x = x + (W(i)*W(n-i)) ;
}
return a + x ;
}
if(n%2 != 0){
int y = 0 ;
for(int i=1; i<(n+1)/2 ; i++){
y = y + W(i)*W(n-i) ;
}
return y ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0075, 2024-11-02 12:43:08, P--P--x--- (20%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k && k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (k>n) return 0;
return 1;
}
long long S(int n) { // Schroder Number
if (n>=2){
int sum=0;
for (int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return sum;
}
if (n==0) return 1;
if (n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2==0){
int sum=0;
for (int i=1; i<=(n/1)-1; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
if (n>1&&n%2!=0){
int sum=0;
for (int i=1; i<=(n+1)/2-1; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
if (n==0) return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0076, 2024-11-02 12:45:36, P--PPPP--- (50%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k && k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (k>n) return 0;
if (k==0) return 1;
}
long long S(int n) { // Schroder Number
if (n>=2){
int sum=0;
for (int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
if (n==0) return 1;
if (n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n!=0&&n%2==0){
int sum=0;
for (int i=1; i<=(n/1)-1; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
if (n!=1&&n%2!=0){
int sum=0;
for (int i=1; i<=(n+1)/2-1; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
if (n==0) return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0077, 2024-11-02 12:47:00, P--PPPPPP- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k && k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (k>n) return 0;
if (k==0) return 1;
}
long long S(int n) { // Schroder Number
if (n>=2){
int sum=0;
for (int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
if (n==0) return 1;
if (n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n!=0&&n%2==0){
int sum=0;
for (int i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
if (n!=1&&n%2!=0){
int sum=0;
for (int i=1; i<=(n+1)/2-1; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
if (n==0) return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0078, 2024-11-02 12:49:05, P--PPPPPP- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k && k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (k>n) return 0;
if (k==0) return 1;
}
long long S(int n) { // Schroder Number
if (n>=2){
long long sum=0;
for (int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
if (n==0) return 1;
if (n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n!=0&&n%2==0){
long long sum=0;
for (int i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
if (n!=1&&n%2!=0){
long long sum=0;
for (int i=1; i<=(n+1)/2-1; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
if (n==0) return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0079, 2024-11-02 12:52:59, P--PPPPPP- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if (k>n) return 0;
return 1;
}
long long S(int n) { // Schroder Number
if (n>=2){
long long sum=0;
for (int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
else if (n==0) return 1;
else if (n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n!=0&&n%2==0){
long long sum=0;
for (int i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
else if (n!=1&&n%2!=0){
long long sum=0;
for (int i=1; i<=(n+1)/2-1; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
else if (n==0) return 0;
else if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0080, 2024-11-02 14:34:49, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
if (1<k&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if (n==0) return 1;
if (n==1) return 2;
if (n>=2){
long long sum=0;
for (int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) {
// Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n!=0&&n%2==0){
long long sum=0;
for (int i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
else if (n!=1&&n%2==1){
long long sum=0;
for (int i=1; i<=((n+1)/2)-1; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0081, 2024-11-02 15:31:38, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
if (1<k&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if (n==0) return 1;
if (n==1) return 2;
if (n>=2){
long long sum=0;
for (int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) {
// Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n!=0&&n%2==0){
long long sum=0;
for (int i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
else if (n!=1&&n%2==1){
long long sum=0;
for (int i=1; i<=((n+1)/2)-1; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0082, 2024-11-02 10:26:29, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k<=(n-2) ; k++){
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0 ;
if(n==1) return 1 ;
if(n%2==0 && n!=0 && n!=1){
long long sum = 0 ;
for(long long i = 1 ; i<=((n/2)-1) ; i++){
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * (W(n/2) + 1))/2) + sum ;
}
if(n%2 == 1 && n!=0 && n!=1){
long long res = 0 ;
for(long long i = 1 ; i<=(((n+1)/2) - 1) ; i++){
res += W(i) * W(n-1) ;
}
return res ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0083, 2024-11-02 10:50:21, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k<=(n-2) ; k++){
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0 ;
if(n==1) return 1 ;
if(n%2==0){
long long sum = 0 ;
for(long long i = 1 ; i<=((n/2)-1) ; i++){
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * (W(n/2) + 1))/2) + sum ;
}
long long res = 0 ;
for(long long i = 1 ; i<=(((n+1)/2) - 1) ; i++){
res += W(i) * W(n-1) ;
}
return res ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0084, 2024-11-02 11:30:31, PPPPPPx-T- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k<=(n-2) ; k++){
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==1) return 1 ;
if(n%2==0){
long long sum = 0 ;
for(long long i = 1 ; i<=((n/2)-1) ; i++){
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * (W(n/2) + 1))/2) + sum ;
}
if(n%2 == 1){
long long res = 0 ;
for(long long i = 1 ; i<=(((n+1)/2) - 1) ; i++){
res += W(i) * W(n-1) ;
}
return res ;
}
return 0 ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0085, 2024-11-02 11:30:49, PPPPPPP-T- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k<=(n-2) ; k++){
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0 ;
if(n==1) return 1 ;
if(n%2==0){
long long sum = 0 ;
for(long long i = 1 ; i<=((n/2)-1) ; i++){
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * (W(n/2) + 1))/2) + sum ;
}
if(n%2 == 1){
long long res = 0 ;
for(long long i = 1 ; i<=(((n+1)/2) - 1) ; i++){
res += W(i) * W(n-1) ;
}
return res ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0086, 2024-11-02 11:31:10, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k<=(n-2) ; k++){
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0 ;
if(n==1) return 1 ;
if(n%2==0){
long long sum = 0 ;
for(long long i = 1 ; i<=((n/2)-1) ; i++){
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * (W(n/2) + 1))/2) + sum ;
}
long long res = 0 ;
for(long long i = 1 ; i<=(((n+1)/2) - 1) ; i++){
res += W(i) * W(n-1) ;
}
return res ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0087, 2024-11-02 11:44:34, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k<=(n-2) ; k++){
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0 ;
if(n==1) return 1 ;
if(n%2==0){
int time = n/2 - 1;
long long sum = 0 ;
for(long long i = 1 ; i<=time; i++){
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * (W(n/2) + 1))/2) + sum ;
}
int time2 = (n+1)/2 - 1 ;
long long res = 0 ;
for(long long i = 1 ; i<=time2 ; i++){
res += W(i) * W(n-1) ;
}
return res ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0088, 2024-11-02 11:45:20, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0 ;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1 ;
if(n==1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k<=(n-2) ; k++){
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0 ;
if(n==1) return 1 ;
if(n%2==0){
int time = n/2 - 1;
long long sum = 0 ;
for(long long i = 1 ; i<=time; i++){
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * (W(n/2) + 1))/2) + sum ;
}
int time2 = (n+1)/2 - 1 ;
long long res = 0 ;
for(long long i = 1 ; i<=time2 ; i++){
res += W(i) * W(n-i) ;
}
return res ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0089, 2024-11-02 12:40:36, xxx------x (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
else if(1<k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if(k==0) return 1;
}
// long long S(int n) { // Schroder Number
// }
// long long W(int n) { // Wedderburn–Etherington Number
// }
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
// } else if (fn == "S") {
// cout << fn << '(' << p1 << ") = " << S(p1) << endl;
// } else if (fn == "W") {
// cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0090, 2024-11-02 12:57:31, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
else if(1<k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if(k==0) return 1;
}
long long S(int n) { // Schroder Number
int sum=0;
if(n>=2){
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
return sum = 0;
}
else if(n==0) return 1;
else if(n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
int sum=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n>2&&n%2==1){
for(int i=1;i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
return sum=0;
}
else if(n>1 && n%2==0){
for(int i=1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return sum + W(n/2)*(W(n/2)+1);
return sum=0;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0091, 2024-11-02 13:06:06, P--PPPP--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n && k>=0 && n>=0) return 0;
else if(k<=n && k>1&& n>=0) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if(k==0) return 1;
}
long long S(int n) { // Schroder Number
int sum=0;
if(n>=2){
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
return sum = 0;
}
else if(n==0) return 1;
else if(n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
int sum=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n>2&&n%2==1){
for(int i=1;i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
return sum=0;
}
else if(n>1 && n%2==0){
for(int i=1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return sum + W(n/2)*(W(n/2)+1);
return sum=0;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0092, 2024-11-02 13:09:23, P--PPPP--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n && k>=0 && n>=0) return 0;
else if(k<=n && k>1) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if(k==0 && n>=0) return 1;
}
long long S(int n) { // Schroder Number
int sum=0;
if(n>=2){
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
return sum = 0;
}
else if(n==0) return 1;
else if(n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
int sum=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n>2&&n%2==1){
for(int i=1;i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
return sum=0;
}
else if(n>1 && n%2==0){
for(int i=1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return sum + W(n/2)*(W(n/2)+1);
return sum=0;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0093, 2024-11-02 13:17:35, P--PPPP--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n && k>=0 && n>=0) return 0;
else if(k<=n && k>1) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if(k==0 && n>=0) return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sum=0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
else if(n==0) return 1;
else if(n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else if(n>2&&n%2==1){
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
else if(n>1 && n%2==0){
int sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return sum + W(n/2)*(W(n/2)+1);
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0094, 2024-11-02 13:21:38, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n && k>=0 && n>=0) return 0;
else if(k<=n && k>1) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if(k==0 && n>=0) return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sum=0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
else if(n==0) return 1;
else if(n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else if(n>2&&n%2==1){
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
else if(n>1 && n%2==0){
long long sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2)+1))/2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0095, 2024-11-02 13:38:41, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n && k>=0 && n>=0) return 0;
else if(k==0 && n>=0) return 1;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sum=0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
else if(n==0) return 1;
else if(n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else if(n>2&&n%2==1){
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
else if(n>1 && n%2==0){
long long sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2)+1))/2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0096, 2024-11-02 09:23:27, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n - 1, k) + T(n - 1, k -1) + T(n, k - 1);
}
long long S(int n) { // Schroder Number
if(n < 2) return n + 1;
int sum = 0;
for(int i = 1; i <= n - 2; i++){
sum += S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n < 2) return n;
int sum = 0, upper;
if(n % 2){
upper = n/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
int same = W(n/2);
return (same/2 * same + same/2) + sum;
}
else{
upper = (n + 1)/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0097, 2024-11-02 09:24:01, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n - 1, k) + T(n - 1, k -1) + T(n, k - 1);
}
long long S(int n) { // Schroder Number
if(n < 2) return n + 1;
int sum = 0;
for(int i = 1; i <= n - 2; i++){
sum += S(i) * S(n - i - 1);
}
return S(n - 1) * 3 + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n < 2) return n;
int sum = 0, upper;
if(n % 2){
upper = n/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
int same = W(n/2);
return (same/2 * same + same/2) + sum;
}
else{
upper = (n + 1)/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0098, 2024-11-02 09:25:20, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n - 1, k) + T(n - 1, k -1) + T(n, k - 1);
}
long long S(int n) { // Schroder Number
if(n < 2) return n + 1;
long long sum = 0;
for(int i = 1; i <= n - 2; i++){
sum += S(i) * S(n - i - 1);
}
return S(n - 1) * 3 + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n < 2) return n;
long long sum = 0;
int upper;
if(n % 2){
upper = n/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
int same = W(n/2);
return (same/2 * same + same/2) + sum;
}
else{
upper = (n + 1)/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0099, 2024-11-02 09:28:26, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n - 1, k) + T(n - 1, k -1) + T(n, k - 1);
}
long long S(int n) { // Schroder Number
if(n < 2) return n + 1;
long long sum = 0;
for(int i = 1; i <= n - 2; i++){
sum += S(i) * S(n - i - 1);
}
return S(n - 1) * 3 + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n < 2) return n;
long long sum = 0;
int upper;
if(n % 2){
upper = n/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
int same = W(n/2);
return (same/2 * same + same/2) + sum;
}
else{
upper = (n + 1)/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0100, 2024-11-02 10:56:08, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n - 1, k) + T(n - 1, k -1) + T(n, k - 1);
}
long long S(int n) { // Schroder Number
if(n < 2) return n + 1;
long long sum = 0;
for(int i = 1; i <= n - 2; i++){
sum += S(i) * S(n - i - 1);
}
return S(n - 1) * 3 + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n < 2) return n;
long long sum = 0;
int upper;
if(n % 2 == 0){
upper = n/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
int same = W(n/2);
return (same/2 * same + same/2) + sum;
}
else{
upper = (n + 1)/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0101, 2024-11-02 10:59:45, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n - 1, k) + T(n - 1, k -1) + T(n, k - 1);
}
long long S(int n) { // Schroder Number
if(n < 2) return n + 1;
long long sum = 0;
for(int i = 1; i <= n - 2; i++){
sum += S(i) * S(n - i - 1);
}
return S(n - 1) * 3 + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n < 2) return n;
long long sum = 0;
int upper;
if(n % 2 == 0){
upper = n/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
long long same = W(n/2);
return (same/2 * same + same/2) + sum;
}
else{
upper = (n + 1)/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0102, 2024-11-02 11:03:11, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n - 1, k) + T(n - 1, k -1) + T(n, k - 1);
}
long long S(int n) { // Schroder Number
if(n < 2) return n + 1;
long long sum = 0;
for(int i = 1; i <= n - 2; i++){
sum += S(i) * S(n - i - 1);
}
return S(n - 1) * 3 + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n < 2) return n;
long long sum = 0;
int upper;
if(n % 2 == 0){
upper = n/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
long long same = W(n/2);
return (same * same + same)/2 + sum;
}
else{
upper = (n + 1)/2 - 1;
for(int i = 1; i <= upper; i++){
sum += W(i) * W(n - i);
}
return sum;
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0103, 2024-11-02 14:45:54, PPPPxx-xxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0 ;
if (n>= k && k > 1 )return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
if (n>= 2)
{
int temp = 3 * S(n-1) ; // may be fix
for ( int i = 1 ; i<= n ;i++)
{
temp += S(i) * S(n - i - 1) ;
}
return temp ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0 || n == 1) return 1;
if (n%2 == 1 )
{
int temp = 0 ;
for (int i = 1 ; i <= ((n+1) / 2)+1 ; i++ )
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
if (n%2 == 0 )
{
int temp = ( W(n/2)*(W(n/2)+1) ) / 2;
for ( int i =1 ; i<= (n/2)-1 ; i++)
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0104, 2024-11-02 14:51:46, PPPPxxPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0 ;
if (n>= k && k > 1 )return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
if (n>= 2)
{
int temp = 3 * S(n-1) ; // may be fix
for ( int i = 1 ; i<= n ;i++)
{
temp += S(i) * S(n - i - 1) ;
}
return temp ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 1) return 1;
if (n == 0) return 0;
if (n%2 == 1 )
{
int temp = 0 ;
for (int i = 1 ; i <= ((n+1) / 2)+1 ; i++ )
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
if (n%2 == 0 )
{
int temp = ( W(n/2)*(W(n/2)+1) ) / 2;
for ( int i =1 ; i<= (n/2)-1 ; i++)
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0105, 2024-11-02 14:53:12, PPPPxxPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0 ;
if (n>= k && k > 1 )return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
if (n>= 2)
{
long long temp = 3 * S(n-1) ; // may be fix
for ( int i = 1 ; i<= n ;i++)
{
temp += S(i) * S(n - i - 1) ;
}
return temp ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 1) return 1;
if (n == 0) return 0;
if (n%2 == 1 )
{
long long temp = 0 ;
for (int i = 1 ; i <= ((n+1) / 2)+1 ; i++ )
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
if (n%2 == 0 )
{
long long temp = ( W(n/2)*(W(n/2)+1) ) / 2;
for ( int i =1 ; i<= (n/2)-1 ; i++)
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0106, 2024-11-02 14:54:13, PPPPxxPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0 ;
if (n>= k && k > 1 )return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(long long n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
if (n>= 2)
{
long long temp = 3 * S(n-1) ; // may be fix
for ( int i = 1 ; i<= n ;i++)
{
temp += S(i) * S(n - i - 1) ;
}
return temp ;
}
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n == 1) return 1;
if (n == 0) return 0;
if (n%2 == 1 )
{
long long temp = 0 ;
for (int i = 1 ; i <= ((n+1) / 2)+1 ; i++ )
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
if (n%2 == 0 )
{
long long temp = ( W(n/2)*(W(n/2)+1) ) / 2;
for ( int i =1 ; i<= (n/2)-1 ; i++)
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0107, 2024-11-02 14:57:43, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0 ;
if (n>= k && k > 1 )return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(long long n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
if (n>= 2)
{
long long temp = 3 * S(n-1) ; // may be fix
for ( int i = 1 ; i<= n - 2;i++)
{
temp += S(i) * S(n - i - 1) ;
}
return temp ;
}
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n == 1) return 1;
if (n == 0) return 0;
if (n%2 == 1 )
{
long long temp = 0 ;
for (int i = 1 ; i <= ((n+1) / 2)+1 ; i++ )
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
if (n%2 == 0 )
{
long long temp = ( W(n/2)*(W(n/2)+1) ) / 2;
for ( int i =1 ; i<= (n/2)-1 ; i++)
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0108, 2024-11-02 14:59:06, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0 ;
if (n>= k && k > 1 )return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(long long n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
if (n>= 2)
{
long long temp = 3 * S(n-1) ; // may be fix
for ( int i = 1 ; i<= n - 2;i++)
{
temp += S(i) * S(n - i - 1) ;
}
return temp ;
}
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n == 1) return 1;
if (n == 0) return 0;
if (n%2 == 1 )
{
long long temp = 0 ;
for (int i = 1 ; i <= ((n+1) / 2) -1 ; i++ )
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
if (n%2 == 0 )
{
long long temp = ( W(n/2)*(W(n/2)+1) ) / 2;
for ( int i =1 ; i<= (n/2)-1 ; i++)
{
temp += W(i) * W(n-i) ;
}
return temp ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0109, 2024-11-02 09:20:31, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
{
return 1;
}
else if(k>n)
{
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
int sum=0, k;
for(k=1;k<=n-2;k++)
{
sum += S(k)*S(n-k-1);
}
return sum + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
int sum = 0,i;
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2 ==0)
{
for(i=1;i<=(n/2)+1; i++)
{
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2) + 1))/2;
}
else if(n%2 == 1)
{
for(i=1;((n+1)/2)+1;i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0110, 2024-11-02 09:24:32, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
{
return 1;
}
else if(k>n)
{
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
int sum=0, k;
for(k=1;k<=n-2;k++)
{
sum += S(k)*S(n-k-1);
}
return sum + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2 ==0)
{
int sum = 0,i;
for(i=1;i<=(n/2)+1; i++)
{
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2) + 1))/2;
}
int sum1 = 0,j;
for(j=1;((n+1)/2)+1;j++)
{
sum1 += W(j)*W(n-j);
}
return sum1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0111, 2024-11-02 09:26:37, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
{
return 1;
}
else if(k>n)
{
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
long long sum=0, k;
for(k=1;k<=n-2;k++)
{
sum += S(k)*S(n-k-1);
}
return sum + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2 ==0)
{
long long sum = 0,i;
for(i=1;i<=(n/2)+1; i++)
{
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2) + 1))/2;
}
long long sum1 = 0,j;
for(j=1;((n+1)/2)+1;j++)
{
sum1 += W(j)*W(n-j);
}
return sum1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0112, 2024-11-02 09:34:37, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
{
return 1;
}
else if(k>n)
{
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
long long sum=0, k;
for(k=1;k<=n-2;k++)
{
sum += S(k)*S(n-k-1);
}
return sum + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2 ==0)
{
long long sum = 0,i;
for(i=1;i<=(n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2) + 1))/2;
}
long long sum1 = 0,j;
for(j=1;((n+1)/2)+1;j++)
{
sum1 += W(j)*W(n-j);
}
return sum1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0113, 2024-11-02 09:35:17, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
{
return 1;
}
else if(k>n)
{
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
long long sum=0, k;
for(k=1;k<=n-2;k++)
{
sum += S(k)*S(n-k-1);
}
return sum + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2 ==0)
{
long long sum = 0,i;
for(i=1;i<=(n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2) + 1))/2;
}
long long sum1 = 0,j;
for(j=1;((n+1)/2)-1;j++)
{
sum1 += W(j)*W(n-j);
}
return sum1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0114, 2024-11-02 09:41:32, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
{
return 1;
}
else if(k>n)
{
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
long long sum=0, k;
for(k=1;k<=n-2;k++)
{
sum += S(k)*S(n-k-1);
}
return sum + 3*S(n-1);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2 ==0)
{
long long sum = 0,i;
for(i=1;i<=(n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum + (W(n/2)*(W(n/2) + 1))/2;
}
long long sum = 0,i;
for(i=1;i<=((n+1)/2)-1;i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0115, 2024-11-02 12:38:51, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long sum = 0;
for(long long i=1;i<n-2;i++){
sum += S(i)*S(n-i-1);
}
return sum + 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0116, 2024-11-02 12:39:03, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
// if(n == 0) return 1;
// if(n == 1) return 2;
// if(n >= 2){
// long long sum = 0;
// for(long long i=1;i<n-2;i++){
// sum += S(i)*S(n-i-1);
// }
// return sum + 3*S(n-1);
// }
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0117, 2024-11-02 12:44:26, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long sum = 0;
for(long long i=1;i<=n-2;i++){
sum += S(i)*S(n-i-1);
}
return sum + 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
long long sum =0;
long long m = n/2;
for(long long i=1;i<=m-1;i++){
sum += W(i)*W(n-i);
}
return (W(m)*W(m+1))/2 + sum;
}else{
long long sum =0;
long long k = (n+1)/2;
for(long long i=1;i<= k-1;i++ ){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0118, 2024-11-02 12:44:39, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long sum = 0;
for(long long i=1;i<=n-2;i++){
sum += S(i)*S(n-i-1);
}
return sum + 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
// if(n == 0) return 0;
// if(n == 1) return 1;
// if(n%2 == 0){
// long long sum =0;
// long long m = n/2;
// for(long long i=1;i<=m-1;i++){
// sum += W(i)*W(n-i);
// }
// return (W(m)*W(m+1))/2 + sum;
// }else{
// long long sum =0;
// long long k = (n+1)/2;
// for(long long i=1;i<= k-1;i++ ){
// sum += W(i)*W(n-i);
// }
// return sum;
// }
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0119, 2024-11-02 12:45:34, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long sum = 0;
for(long long i=1;i<=n-2;i++){
sum += S(i)*S(n-i-1);
}
return sum + 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n >= 2){
if(n%2 == 0){
long long sum =0;
long long m = n/2;
for(long long i=1;i<=m-1;i++){
sum += W(i)*W(n-i);
}
return (W(m)*W(m+1))/2 + sum;
}else{
long long sum =0;
long long k = (n+1)/2;
for(long long i=1;i<= k-1;i++ ){
sum += W(i)*W(n-i);
}
return sum;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0120, 2024-11-02 12:50:45, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long sum = 0;
for(long long i=1;i<=n-2;i++){
sum += S(i)*S(n-i-1);
}
return sum + 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n >= 2){
if(n%2 == 0){
long long sum =0;
long long m = n/2;
for(long long i=1;i<=m-1;i++){
sum += (W(i)*W(n-i));
}
return (W(m)*(W(m)+1))/2 + sum;
}else if (n%2 == 1){
long long su =0;
long long k = (n+1)/2;
for(long long i=1;i<= k-1;i++ ){
su += (W(i)*W(n-i));
}
return su;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0121, 2024-11-02 12:45:35, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n)return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n==1) return 2;
long long t = 0;
for(int k = 1;k<=n-2;k++){
t += S(k) * S(n-k-1);
}
return 3*S(n-1) + t;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n ==0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
long long x= 0;
for(int i =i;i<=(n/2)-1;i++){
x += W(i)*W(n-1);
}
return (W(n/2)*(W(n/2)+1))/2 + x;
}
if(n%2 != 0){
long long y = 0;
for(int i = 1;i<= (n/2)-1;i++){
y += W(i)*W(n-1);
}
return y;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0122, 2024-11-02 12:49:17, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n)return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n==1) return 2;
long long t = 0;
for(int k = 1;k<=n-2;k++){
t += S(k) * S(n-k-1);
}
return 3*S(n-1) + t;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n ==0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
long long x= 0;
for(int i =1;i<=(n/2)-1;i++){
x += W(i)*W(n-1);
}
return (W(n/2)*(W(n/2)+1))/2 + x;
}
if(n%2 != 0){
long long y = 0;
for(int i = 1;i<= (n/2)-1;i++){
y += W(i)*W(n-1);
}
return y;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0123, 2024-11-02 12:51:10, Compilation error (0%)
BossPaul#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n)return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n==1) return 2;
long long t = 0;
for(int k = 1;k<=n-2;k++){
t += S(k) * S(n-k-1);
}
return 3*S(n-1) + t;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n ==0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
long long x= 0;
for(int i =1;i<=(n/2)-1;i++){
x += W(i)*W(n-1);
}
return (W(n/2)*(W(n/2)+1))/2 + x;
}
long long y = 0;
for(int i = 1;i<= (n/2)-1;i++){
y += W(i)*W(n-1);
}
return y;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0124, 2024-11-02 12:51:30, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n)return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n==1) return 2;
long long t = 0;
for(int k = 1;k<=n-2;k++){
t += S(k) * S(n-k-1);
}
return 3*S(n-1) + t;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n ==0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
long long x= 0;
for(int i =1;i<=(n/2)-1;i++){
x += W(i)*W(n-1);
}
return (W(n/2)*(W(n/2)+1))/2 + x;
}
long long y = 0;
for(int i = 1;i<= (n/2)-1;i++){
y += W(i)*W(n-1);
}
return y;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0125, 2024-11-02 14:23:28, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n)return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n==1) return 2;
long long t = 0;
for(int k = 1;k<=n-2;k++){
t += S(k) * S(n-k-1);
}
return 3*S(n-1) + t;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n ==0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
long long x= 0;
for(int i =1;i<=(n/2)-1;i++){
x += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + x;
}
long long y = 0;
for(int i = 1;i<= (n/2)-1;i++){
y += W(i)*W(n-1);
}
return y;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0126, 2024-11-02 14:28:49, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n)return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n==1) return 2;
long long t = 0;
for(int k = 1;k<=n-2;k++){
t += S(k) * S(n-k-1);
}
return 3*S(n-1) + t;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n ==0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
long long x= 0;
for(int i = 1; i <= (n/2)-1;i++){
x += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + x;
}
long long y = 0;
for(int i = 1;i<= (((n+1)/2)-1);i++){
y += W(i)*W(n-i);
}
return y;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0127, 2024-11-02 13:22:57, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(1<k<=n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long temp=0;
if(n>=2){
for(int k=1;k<n-1;k++){
temp = S(k)*S(n-k-1)+temp;
}
return (3*S(n-1))+temp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long tomp;
for(int i=1;i<n/2;i++){
tomp = W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + tomp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0128, 2024-11-02 13:24:54, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(1<k<=n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long temp=0;
if(n>=2){
for(int k=1;k<n-1;k++){
temp = S(k)*S(n-k-1)+temp;
}
return (3*S(n-1))+temp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long tomp=0;
for(int i=1;i<n/2;i++){
tomp = W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + tomp;
}
if(n%2==1){
long long tuk=0;
for(int i=1;i<(n+1)/2;i++){
tuk=(W(i)*W(n-i));
}
return tuk;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0129, 2024-11-02 13:25:42, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(1<k<=n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long temp=0;
if(n>=2){
for(int k=1;k<n-1;k++){
temp = S(k)*S(n-k-1)+temp;
}
return (3*S(n-1))+temp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long tomp=0;
for(int i=1;i<n/2;i++){
tomp = W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + tomp;
}
if(n%2==1){
long long tuk=0;
for(int i=1;i<(n+1)/2;i++){
tuk=(W(i)*W(n-i));
}
return tuk;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0130, 2024-11-02 13:31:23, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(1<k<=n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long temp=0;
if(n>=2){
for(int k=1;k<n-1;k++){
temp = S(k)*S(n-k-1)+temp;
}
return (3*S(n-1))+temp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long tomp=0;
for(int i=1;i<n/2;i++){
tomp = W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + tomp;
}
if(n%2==1){
long long tuk=0;
for(int i=1;i<(n+1)/2;i++){
tuk=(W(i)*W(n-i));
}
return tuk;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0131, 2024-11-02 13:31:27, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(1<k<=n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long temp=0;
if(n>=2){
for(int k=1;k<n-1;k++){
temp = S(k)*S(n-k-1)+temp;
}
return (3*S(n-1))+temp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long tomp=0;
for(int i=1;i<n/2;i++){
tomp = W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + tomp;
}
if(n%2==1){
long long tuk=0;
for(int i=1;i<(n+1)/2;i++){
tuk=(W(i)*W(n-i));
}
return tuk;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0132, 2024-11-02 13:44:16, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(1<k<=n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long temp=0;
if(n>=2){
for(int k=1;k<n-1;k++){
temp = S(k)*S(n-k-1)+temp;
}
return (3*S(n-1))+temp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long tomp=0;
for(int i=1;i<n/2;i++){
tomp = W(i)*W(n-i)+tomp;
}
return (W(n/2)*(W(n/2)+1))/2 + tomp;
}
if(n%2==1){
long long tuk=0;
for(int i=1;i<(n+1)/2;i++){
tuk=(W(i)*W(n-i))+tuk;
}
return tuk;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0133, 2024-11-02 09:25:27, PPPxxxxxx- (30%)
#include <iostream>
#include<cmath>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
}
long long S(int n) { // Schroder Number
if(n=0){
return 1;
}
else if(n==1){
return 2;
}
else{
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0134, 2024-11-02 09:30:29, PPPTTTP--T (40%)
#include <iostream>
#include<cmath>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
}
long long S(int n) { // Schroder Number
if(n=0){
return 1;
}
else if(n==1){
return 2;
}
else{
int x=0;
for(int k=1;k<=n-2;k++){
x+= (S(k)*S(n-k-1));
}
return (3*S(n-1)+x);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n%2==0){
int x=0;
for(int i=1;i<=(n/2-1);i++){
x+= (W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1) + x);
}else{
int x=0;
for(int i=1;i<=((n+1)/2)-1;i++){
x+= W(i)*W(n-i);
}
return x;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0135, 2024-11-02 09:32:10, PPPPPPP--- (70%)
#include <iostream>
#include<cmath>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else{
int x=0;
for(int k=1;k<=n-2;k++){
x+= (S(k)*S(n-k-1));
}
return (3*S(n-1)+x);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n%2==0){
int x=0;
for(int i=1;i<=(n/2-1);i++){
x+= (W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1) + x);
}else{
int x=0;
for(int i=1;i<=((n+1)/2)-1;i++){
x+= W(i)*W(n-i);
}
return x;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0136, 2024-11-02 09:34:11, PPPPPPP--- (70%)
#include <iostream>
#include<cmath>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else{
int x=0;
for(int k=1;k<=n-2;k++){
x+= (S(k)*S(n-k-1));
}
return (3*S(n-1)+x);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n%2==0){
int x=0;
for(int i=1;i<=((n/2)-1);i++){
x+= (W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1) + x);
}else if(n%2!=0){
int x=0;
for(int i=1;i<=(((n+1)/2)-1);i++){
x+= W(i)*W(n-i);
}
return x;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0137, 2024-11-02 09:35:41, PPPPPPPPPP (100%)
#include <iostream>
#include<cmath>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else{
int x=0;
for(int k=1;k<=n-2;k++){
x+= (S(k)*S(n-k-1));
}
return (3*S(n-1)+x);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n%2==0){
int x=0;
for(int i=1;i<=((n/2)-1);i++){
x+= (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2+ x);
}else if(n%2!=0){
int x=0;
for(int i=1;i<=(((n+1)/2)-1);i++){
x+= W(i)*W(n-i);
}
return x;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0138, 2024-11-02 10:55:42, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k - 1) + T(n - 1, k -1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long result = 0;
result += 3 * S(n - 1);
for (int i = 1; i < n - 1; i++)
{
result += S(i) * S(n - i -1);
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
long long result = 0;
if (n % 2 == 0)
{
result += W(n / 2)*(W(n / 2) + 1);
for (int i = 1; i < n / 2; i++)
{
result += W(i) * W(n - i);
}
}
else
{
for (int i = 1; i < (n+1/2); i++)
{
result += W(i) * W(n - i);
}
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0139, 2024-11-02 10:57:11, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k - 1) + T(n - 1, k -1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long result = 0;
result += 3 * S(n - 1);
for (int i = 1; i < n - 1; i++)
{
result += S(i) * S(n - i -1);
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
long long result = 0;
if (n % 2 == 0)
{
result += (W(n / 2)*(W(n / 2) + 1)) / 2;
for (int i = 1; i < n / 2; i++)
{
result += W(i) * W(n - i);
}
}
else
{
for (int i = 1; i < (n+1/2); i++)
{
result += W(i) * W(n - i);
}
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0140, 2024-11-02 10:58:15, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k - 1) + T(n - 1, k -1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long result = 0;
result += 3 * S(n - 1);
for (int i = 1; i < n - 1; i++)
{
result += S(i) * S(n - i -1);
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
long long result = 0;
if (n % 2 == 0)
{
result += (W(n / 2)*(W(n / 2) + 1)) / 2;
for (int i = 0; i < n / 2; i++)
{
result += W(i) * W(n - i);
}
}
else
{
for (int i = 0; i < (n+1/2); i++)
{
result += W(i) * W(n - i);
}
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0141, 2024-11-02 10:58:46, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k - 1) + T(n - 1, k -1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long result = 0;
result += 3 * S(n - 1);
for (int i = 1; i < n - 1; i++)
{
result += S(i) * S(n - i -1);
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
long long result = 0;
if (n % 2 == 0)
{
result += (W(n / 2)*(W(n / 2) + 1)) / 2;
for (int i = 1; i < n / 2 - 1; i++)
{
result += W(i) * W(n - i);
}
}
else
{
for (int i = 1; i < (n+1/2) - 1; i++)
{
result += W(i) * W(n - i);
}
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0142, 2024-11-02 11:57:49, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k - 1) + T(n - 1, k -1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long result = 0;
result += 3 * S(n - 1);
for (int i = 1; i < n - 1; i++)
{
result += S(i) * S(n - i -1);
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
long long result = 0;
if (n % 2 == 0)
{
result += ((W(n / 2))*(W(n / 2) + 1)) / 2;
for (int i = 1; i < n / 2; i++)
{
result += W(i) * W(n - i);
}
}
else if (n % 2 == 1)
{
for (int i = 1; i < ((n+1)/2); i++)
{
result += W(i) * W(n - i);
}
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0143, 2024-11-02 09:30:42, PPPPTTP--T (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
return 1;
if(k > n)
return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)
return 1;
if(n == 1)
return 2;
long long sum = 0;
for(int k=0;k<=n-2;k++){
sum += S(k)*S(k-n-1);
}
return sum+(3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0){
long long sum = 0;
for(int i=1;i<((n/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum+((W(n/2)*(W(n/2)+1))/2);
}
if(n % 2 == 1){
long long sum = 0;
for(int i=1;i<(((n+1)/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0144, 2024-11-02 09:34:53, PPPPTTP--T (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
return 1;
if(k > n)
return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)
return 1;
if(n == 1)
return 2;
int sum = 0;
for(int k=0;k<=n-2;k++){
sum += S(k)*S(k-n-1);
}
return sum+(3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0){
int sum = 0;
for(int i=1;i<((n/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum+((W(n/2)*(W(n/2)+1))/2);
}
if(n % 2 == 1){
int sum = 0;
for(int i=1;i<(((n+1)/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0145, 2024-11-02 11:50:33, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
return 1;
if(k > n)
return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)
return 1;
if(n == 1)
return 2;
long long sum = 0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return sum+(3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0){
long long sum = 0;
for(int i=1;i<((n/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum+((W(n/2)*(W(n/2)+1))/2);
}
if(n % 2 == 1){
long long sum = 0;
for(int i=1;i<(((n+1)/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0146, 2024-11-02 11:51:57, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
return 1;
if(k > n)
return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)
return 1;
if(n == 1)
return 2;
long long sum = 0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return sum+(3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0 && n!=0){
long long sum = 0;
for(int i=1;i<((n/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum+((W(n/2)*(W(n/2)+1))/2);
}
if(n % 2 == 1 && n!=1){
long long sum = 0;
for(int i=1;i<(((n+1)/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0147, 2024-11-02 11:53:12, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
return 1;
if(k > n)
return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)
return 1;
if(n == 1)
return 2;
long long sum = 0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return sum+(3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0 && n != 0) {
long long sum = 0;
for(int i=1;i<=((n/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum+((W(n/2)*(W(n/2)+1))/2);
}
if(n % 2 == 1 && n != 1){
long long sum = 0;
for(int i=1;i<=(((n+1)/2)-1);i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0148, 2024-11-02 14:44:30, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
int res = 0;
res += T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (1 < k && 1 < n && k <= n){
return res;
}
}
long long S(int n) {
int sum = 0; // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if( n >= 2){
for(int k = 1; k <= n-2;k++){
sum += (S(k)*S(n-k-1));
}
int ans = (3*S(n-1))+sum;
return ans;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
int sum = 0;
if(n%2 == 0){
for(int i = 1; i <= (n/2)-1; i++){
sum += W(i)*(W(n-i));
}
int ans = W(n/2)*(W((n/2)+1));
ans /= 2;
ans += sum;
return ans;
}
else if(n%2 == 1){
for(int i = 1; i < (n+1)/2; i++){
sum += W(i)*(W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0149, 2024-11-02 14:45:29, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
int res = 0;
res += T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (1 < k && 1 < n && k <= n){
return res;
}
}
long long S(int n) {
int sum = 0; // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if( n >= 2){
for(int k = 1; k <= n-2;k++){
sum += (S(k)*S(n-k-1));
}
int ans = (3*S(n-1))+sum;
return ans;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
int sum = 0;
if(n%2 == 0 && n >= 0){
for(int i = 1; i <= (n/2)-1; i++){
sum += W(i)*(W(n-i));
}
int ans = W(n/2)*(W((n/2)+1));
ans /= 2;
ans += sum;
return ans;
}
else if(n%2 == 1){
for(int i = 1; i < (n+1)/2; i++){
sum += W(i)*(W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0150, 2024-11-02 14:57:45, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
int res = 0;
res += T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (1 < k && 1 < n && k <= n){
return res;
}
}
long long S(int n) {
long long sum = 0; // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if( n >= 2){
for(int k = 1; k <= n-2;k++){
sum += (S(k)*S(n-k-1));
}
long long ans = (3*S(n-1))+sum;
return ans;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sum = 0;
if(n%2 == 0 && n >= 0){
for(int i = 1; i <= (n/2)-1; i++){
sum += W(i)*(W(n-i));
}
long long ans = W(n/2)*(W((n/2)+1));
ans /= 2;
ans += sum;
return ans;
}
else if(n%2 == 1){
for(int i = 1; i < (n+1)/2; i++){
sum += W(i)*(W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0151, 2024-11-02 14:58:45, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
long long res = 0;
res += T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (1 < k && 1 < n && k <= n){
return res;
}
}
long long S(int n) {
long long sum = 0; // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if( n >= 2){
for(int k = 1; k <= n-2;k++){
sum += (S(k)*S(n-k-1));
}
long long ans = (3*S(n-1))+sum;
return ans;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
int sum = 0;
if(n%2 == 0 && n >= 0){
for(int i = 1; i <= (n/2)-1; i++){
sum += W(i)*(W(n-i));
}
int ans = W(n/2)*(W((n/2)+1));
ans /= 2;
ans += sum;
return ans;
}
else if(n%2 == 1){
for(int i = 1; i < (n+1)/2; i++){
sum += W(i)*(W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0152, 2024-11-02 15:09:14, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
long long res = 0;
res += T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if (1 < k && 1 < n && k <= n){
return res;
}
}
long long S(int n) {
long long sum = 0; // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if( n >= 2){
for(int k = 1; k <= n-2;k++){
sum += (S(k)*S(n-k-1));
}
long long ans = (3*S(n-1))+sum;
return ans;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sum = 0;
if(n%2 == 0 && n >= 0){
for(int i = 1; i <= (n/2)-1; i++){
sum += W(i)*(W(n-i));
}
long long ans = W(n/2)*(W(n/2)+1);
ans /= 2;
ans += sum;
return ans;
}
else if(n%2 == 1){
for(long long i = 1; i < (n+1)/2; i++){
sum += W(i)*(W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0153, 2024-11-02 12:44:26, P--PxxPPPx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k > n)
{
return 0;
}
if (k == 0)
{
return 1;
}
return T(n,k-1) + T(n-1,k-1), T(n-1,k);
}
long long S(int n) {
if (n == 0) return 1;
if (n == 1) return 2;
long long int sum = 0;
for (int i = 0; i <= n-2; i++)
{
sum += S(n) * S(n-i-1);
}
return sum + 3 * S(n-1);
}
long long W(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0)
{
long long int sumEven = 0;
for (int i = 1; i <= n/2 - 1; i++)
{
sumEven += W(i) * W(n-i);
}
return (W(n/2) * (W(n/2) + 1))/2 + sumEven;
}
if (n%2 == 1)
{
long long int sumOdd = 0;
for (int i = 1; i <= (n+1)/2 - 1; i++)
{
sumOdd += W(i) * W(n-i);
}
return sumOdd;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0154, 2024-11-02 14:27:05, P--PxxPPPx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k > n)
{
return 0;
}
if (k == 0)
{
return 1;
}
return T(n,k-1) + T(n-1,k-1), T(n-1,k);
}
long long S(int n) {
if (n == 0) return 1;
if (n == 1) return 2;
long long int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(n) * S(n-i-1);
}
return sum + 3 * S(n-1);
}
long long W(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0)
{
long long int sumEven = 0;
for (int i = 1; i <= n/2 - 1; i++)
{
sumEven += W(i) * W(n-i);
}
return (W(n/2) * (W(n/2) + 1))/2 + sumEven;
}
if (n%2 == 1)
{
long long int sumOdd = 0;
for (int i = 1; i <= (n+1)/2 - 1; i++)
{
sumOdd += W(i) * W(n-i);
}
return sumOdd;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0155, 2024-11-02 14:29:02, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k > n)
{
return 0;
}
if (k == 0)
{
return 1;
}
return T(n,k-1) + T(n-1,k-1), T(n-1,k);
}
long long S(int n) {
if (n == 0) return 1;
if (n == 1) return 2;
long long int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n-i-1);
}
return sum + 3 * S(n-1);
}
long long W(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0)
{
long long int sumEven = 0;
for (int i = 1; i <= n/2 - 1; i++)
{
sumEven += W(i) * W(n-i);
}
return (W(n/2) * (W(n/2) + 1))/2 + sumEven;
}
if (n%2 == 1)
{
long long int sumOdd = 0;
for (int i = 1; i <= (n+1)/2 - 1; i++)
{
sumOdd += W(i) * W(n-i);
}
return sumOdd;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0156, 2024-11-02 14:32:38, PxxPPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k > n)
{
return 0;
}
if (k == 0)
{
return 1;
}
if (1 < k && k <= n)
return T(n,k-1) + T(n-1,k-1), T(n-1,k);
}
long long S(int n) {
if (n == 0) return 1;
if (n == 1) return 2;
long long int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n-i-1);
}
return sum + 3 * S(n-1);
}
long long W(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0)
{
long long int sumEven = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sumEven += W(i) * W(n-i);
}
return (W(n/2) * (W(n/2) + 1))/2 + sumEven;
}
if (n%2 == 1)
{
long long int sumOdd = 0;
for (int i = 1; i <= (n+1)/2 - 1; i++)
{
sumOdd += W(i) * W(n-i);
}
return sumOdd;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0157, 2024-11-02 14:38:12, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k > n)
{
return 0;
}
if (k == 0)
{
return 1;
}
if (1 < k && k <= n)
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if (n == 0) return 1;
if (n == 1) return 2;
long long int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n-i-1);
}
return sum + 3 * S(n-1);
}
long long W(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0)
{
long long int sumEven = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sumEven += W(i) * W(n-i);
}
return (W(n/2) * (W(n/2) + 1))/2 + sumEven;
}
if (n%2 == 1)
{
long long int sumOdd = 0;
for (int i = 1; i <= (n+1)/2 - 1; i++)
{
sumOdd += W(i) * W(n-i);
}
return sumOdd;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0158, 2024-11-02 09:35:08, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
else if (1<k && k<=n)
{
return T(n,k-1)+T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2)
{
long long a;
for (int k=1; k<=(n/2)-1; k++)
{
a = a + S(k)*S(n-k-1);
}
return 3*S(n-1)+a;
}
}
long long W(int n) {
if(n==0)return 0;
else if (n==1) return 1;
else if (n%2==1)
{
long long a;
for (int i=1; i<=((n+1)/2)-1; i++)
{
a = a + W(i)*W(n-i);
}
return a;
}
else if(n%2==0)
{
long long a;
for (int i=1; i<=(n/2)-1; i++)
{
a = a + W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0159, 2024-11-02 09:36:42, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
else if (1<k && k<=n)
{
return T(n,k-1)+T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2)
{
long long a;
for (int k=1; k<=n-2; k++)
{
a = a + S(k)*S(n-k-1);
}
return 3*S(n-1)+a;
}
}
long long W(int n) {
if(n==0)return 0;
else if (n==1) return 1;
else if (n%2==1)
{
long long a;
for (int i=1; i<=((n+1)/2)-1; i++)
{
a = a + W(i)*W(n-i);
}
return a;
}
else if(n%2==0)
{
long long a;
for (int i=1; i<=(n/2)-1; i++)
{
a = a + W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0160, 2024-11-02 09:39:08, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
else if (1<k && k<=n)
{
return T(n,k-1)+T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2)
{
long long a;
for (int k=1; k<=n-2; k++)
{
a = a + S(k)*S(n-k-1);
}
return (3*S(n-1))+a;
}
}
long long W(int n) {
if(n==0)return 0;
else if (n==1) return 1;
else if (n%2==1 && n>2)
{
long long a;
for (int i=1; i<=((n+1)/2)-1; i++)
{
a = a + (W(i)*W(n-i));
}
return a;
}
else if(n%2==0 && n>1)
{
long long a;
for (int i=1; i<=(n/2)-1; i++)
{
a = a + (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2) + a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0161, 2024-11-02 10:59:25, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
else if (1<k && k<=n)
{
return T(n,k-1)+T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2)
{
long long a=0;
for (int k=1; k<=n-2; k++)
{
a = a + S(k)*S(n-k-1);
}
return (3*S(n-1))+a;
}
}
long long W(int n) {
if(n==0)return 0;
else if (n==1) return 1;
else if (n%2==1 && n>2)
{
long long a=0;
for (int i=1; i<=((n+1)/2)-1; i++)
{
a = a + (W(i)*W(n-i));
}
return a;
}
else if(n%2==0 && n>1)
{
long long a;
for (int i=1; i<=(n/2)-1; i++)
{
a = a + (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2) + a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0162, 2024-11-02 11:00:14, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
else if (1<k && k<=n)
{
return T(n,k-1)+T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2)
{
long long a=0;
for (int k=1; k<=n-2; k++)
{
a = a + S(k)*S(n-k-1);
}
return (3*S(n-1))+a;
}
}
long long W(int n) {
if(n==0)return 0;
else if (n==1) return 1;
else if (n%2==1 && n>2)
{
long long a=0;
for (int i=1; i<=((n+1)/2)-1; i++)
{
a = a + (W(i)*W(n-i));
}
return a;
}
else if(n%2==0 && n>1)
{
long long a=0;
for (int i=1; i<=(n/2)-1; i++)
{
a = a + (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2) + a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0163, 2024-11-02 12:43:51, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n) return 0;
else if(k==0) return 1;
if(n>=k)
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
int temp=0;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
for(int i=1;i<=n-2;i++){
temp+=S(i)*S(n-i-1);
}
return 3*S(n-1)+temp;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
int temp=0;
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
W(i)*W(n-i);
}
return (W(n/2)*W(n/2-1))/2+temp;
}
else {
for(int i=1;i<=(n+1)/2-1;i++){
temp+=W(i)*W(n-i);
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0164, 2024-11-02 12:46:50, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n) return 0;
else if(k==0) return 1;
if(n>=k)
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
int temp=0;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
for(int i=1;i<=n-2;i++){
temp+=S(i)*S(n-i-1);
}
return 3*S(n-1)+temp;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
int temp=0;
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
temp+=W(i)*W(n-i);
}
return (W(n/2)*W(n/2-1))/2+temp;
}
else {
for(int i=1;i<=(n+1)/2-1;i++){
temp+=W(i)*W(n-i);
}
return temp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0165, 2024-11-02 14:07:45, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long temp=0;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
for(int i=1;i<=n-2;i++){
temp+=S(i)*S(n-i-1);
}
return 3*S(n-1)+temp;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
long long temp=0;
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
temp+=W(i)*W(n-i);
}
temp+=W(n/2)*W((n/2)-1)/2;
return temp;
}
else {
for(int i=1;i<=((n+1)/2)-1;i++){
temp+=W(i)*W(n-i);
}
return temp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0166, 2024-11-02 14:11:58, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long temp=0;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
for(int i=1;i<=n-2;i++){
temp+=S(i)*S(n-i-1);
}
return 3*S(n-1)+temp;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
long long temp=0;
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
temp+=W(i)*W(n-i);
}
temp+=(W(n/2)*W((n/2))+1)/2;
return temp;
}
else {
for(int i=1;i<=((n+1)/2)-1;i++){
temp+=W(i)*W(n-i);
}
return temp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0167, 2024-11-02 14:12:52, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
else if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long temp=0;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
for(int i=1;i<=n-2;i++){
temp+=S(i)*S(n-i-1);
}
return 3*S(n-1)+temp;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
long long temp=0;
if(n%2==0){
for(int i=1;i<=n/2-1;i++){
temp+=W(i)*W(n-i);
}
temp+=(W(n/2)*(W((n/2))+1))/2;
return temp;
}
else {
for(int i=1;i<=((n+1)/2)-1;i++){
temp+=W(i)*W(n-i);
}
return temp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0168, 2024-11-02 12:38:11, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0169, 2024-11-02 12:42:05, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0170, 2024-11-02 12:47:10, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0) {
int sum = 0;
for (int i = 0; i <= (n/2 -1); i++) {
sum += W(i) * W(n-i);
}
return (W(n/2)*(W(n/2)+1)) / 2 +sum;
}
else {
int sum = 0;
for (int i = 0; i <= (n+1)/2-1; i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0171, 2024-11-02 12:48:57, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0) {
int sum = 0;
for (int i = 0; i <= (n/2)-1; i++) {
sum += W(i) * W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/ 2) +sum;
}
else {
int sum = 0;
for (int i = 0; i <= ((n+1)/2)-1; i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0172, 2024-11-02 12:51:24, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
if (n%2 == 0) {
int sum = 0;
for (int i = 1; i <= (n/2)-1; i++) {
sum += W(i) * W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/ 2) +sum;
}
else {
int sum = 0;
for (int i = 1; i <= ((n+1)/2)-1; i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0173, 2024-11-02 12:38:49, PxxPPP---x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k <= n && k > 1){
long long ans = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long a = 3 * S(n-1);
long long total = 0;
for(int k = 1 ; k <= n-2 ; k++){
total += S(k) * S(n-k-1);
}
return a + total;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0174, 2024-11-02 12:44:37, PxxPPPPPPx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k <= n && k > 1){
long long ans = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long a = 3 * S(n-1);
long long total = 0;
for(int k = 1 ; k <= n-2 ; k++){
total += S(k) * S(n-k-1);
}
return a + total;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 0){
long long A = (W(n/2) * ( W(n/2)+1 ) )/2;
long long total = 0;
for(int i = 1 ; i <= ((n/2) - 1) ; i++){
total += W(i)*W(n-i);
}
return A + total;
}else{
long long total = 0;
for(int i = 1 ; i<= ((n+1)/2 )-1;i++){
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0175, 2024-11-02 12:46:03, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k <= n && k > 1){
long long ans = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
return ans;
}
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long a = 3 * S(n-1);
long long total = 0;
for(int k = 1 ; k <= n-2 ; k++){
total += S(k) * S(n-k-1);
}
return a + total;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 0){
long long A = (W(n/2) * ( W(n/2)+1 ) )/2;
long long total = 0;
for(int i = 1 ; i <= ((n/2) - 1) ; i++){
total += W(i)*W(n-i);
}
return A + total;
}else{
long long total = 0;
for(int i = 1 ; i<= ((n+1)/2 )-1;i++){
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0176, 2024-11-02 12:46:45, TTTPPPPPPT (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k <= n){
long long ans = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
return ans;
}
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long a = 3 * S(n-1);
long long total = 0;
for(int k = 1 ; k <= n-2 ; k++){
total += S(k) * S(n-k-1);
}
return a + total;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 0){
long long A = (W(n/2) * ( W(n/2)+1 ) )/2;
long long total = 0;
for(int i = 1 ; i <= ((n/2) - 1) ; i++){
total += W(i)*W(n-i);
}
return A + total;
}else{
long long total = 0;
for(int i = 1 ; i<= ((n+1)/2 )-1;i++){
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0177, 2024-11-02 12:48:23, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
if(k <= n && k > 1){
long long ans = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
return ans;
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long a = 3 * S(n-1);
long long total = 0;
for(int k = 1 ; k <= n-2 ; k++){
total += S(k) * S(n-k-1);
}
return a + total;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 0){
long long A = (W(n/2) * ( W(n/2)+1 ) )/2;
long long total = 0;
for(int i = 1 ; i <= ((n/2) - 1) ; i++){
total += W(i)*W(n-i);
}
return A + total;
}else{
long long total = 0;
for(int i = 1 ; i<= ((n+1)/2 )-1;i++){
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0178, 2024-11-02 09:18:24, P--xxxxxx- (10%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1 < k && k <= n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
} else if (k > n){
return 0;
} else if (k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0179, 2024-11-02 09:24:22, P--P------ (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1 < k && k <= n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
} else if (k > n){
return 0;
} else if (k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if (n == 0){
return 1;
} else if (n == 1){
return 2;
} else if (n >= 2){
long long result = 0;
for (int k = 1; k < n-2;k++){
result += S(k)*S(n-k-1);
}
return (3*S(n-1))+result;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0180, 2024-11-02 09:35:38, P--P--P--- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1 < k && k <= n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
} else if (k > n){
return 0;
} else if (k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if (n == 0){
return 1;
} else if (n == 1){
return 2;
} else if (n >= 2){
long long result = 0;
for (long long k = 1; k < n-2;k++){
result += S(k)*S(n-k-1);
}
return (3*S(n-1))+result;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0){
return 0;
} else if (n == 1){
return 1;
} else if (n%2 != 0){
long long resultWodd = 0;
long long end = ((n+1)/2)-1;
for (long long i = 1; i < end; i++){
resultWodd += (W(i)*W(n-i));
}
return resultWodd;
} else if (n%2 == 0){
long long leftresult = (W(n/2)*(W(n/2)+1))/2;
long long rightresult = 0;
for (long long i = 1; i < ((n/2)-1); i++){
rightresult += W(i)*W(n-i);
}
return leftresult+rightresult;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0181, 2024-11-02 09:57:55, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1 < k && k <= n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
} else if (k > n){
return 0;
} else if (k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if (n == 0){
return 1;
} else if (n == 1){
return 2;
} else if (n >= 2){
long long result = 0;
for (long long k = 1; k <= n-2;k++){
result += S(k)*S(n-k-1);
}
return (3*S(n-1))+result;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0){
return 0;
} else if (n == 1){
return 1;
} else if (n%2 != 0){
long long resultWodd = 0;
long long end = ((n+1)/2)-1;
for (long long i = 1; i <= end; i++){
resultWodd += (W(i)*W(n-i));
}
return resultWodd;
} else if (n%2 == 0){
long long leftresult = (W(n/2)*(W(n/2)+1))/2;
long long rightresult = 0;
for (long long i = 1; i <= ((n/2)-1); i++){
rightresult += W(i)*W(n-i);
}
return leftresult+rightresult;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0182, 2024-11-02 10:04:22, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0){
return 1;
} else if (k > n){
return 0;
} else if (1 < k <= n){
long long result = (T(n,k-1))+(T(n-1,k-1))+(T(n-1,k));
return result;
}
if (1 < k && k <= n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
} else if (k > n){
return 0;
} else if (k == 0){
return 1;
}
}
long long S(int n) { // Schroder Number
if (n == 0){
return 1;
} else if (n == 1){
return 2;
} else if (n >= 2){
long long result = 0;
for (long long k = 1; k <= n-2;k++){
result += S(k)*S(n-k-1);
}
return (3*S(n-1))+result;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0){
return 0;
} else if (n == 1){
return 1;
} else if (n%2 != 0){
long long resultWodd = 0;
long long end = ((n+1)/2)-1;
for (long long i = 1; i <= end; i++){
resultWodd += (W(i)*W(n-i));
}
return resultWodd;
} else if (n%2 == 0){
long long leftresult = (W(n/2)*(W(n/2)+1))/2;
long long rightresult = 0;
for (long long i = 1; i <= ((n/2)-1); i++){
rightresult += W(i)*W(n-i);
}
return leftresult+rightresult;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0183, 2024-11-02 09:22:51, P--PPPPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k>n) {
return 0;
}
if (k>1) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return 1;
}
long long S(int n) { // Schroder Number
if (n>=2) {
long long total=0;
for (int k=1 ; k<=n-2 ; k++) {
total += S(k)*S(n-k-1);
}
return 3*S(n-1) + total;
}
if (n==1) return 2;
if (n==0) return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2 == 0) {
long long total=0;
for (int i=1 ; i<=(n/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return ((W(n/2)*W((n/2)+1))/2) + total;
}
if (n%2 == 1) {
long long total=0;
for (int i=1 ; i<((n+1)/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0184, 2024-11-02 09:34:26, P--PPPPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k && k<=n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if (k>n) {
return 0;
}
if (k==0) return 1;
}
long long S(int n) { // Schroder Number
if (n>=2) {
long long total=0;
for (int k=1 ; k<=n-2 ; k++) {
total += S(k)*S(n-k-1);
}
return 3*S(n-1) + total;
}
if (n==1) return 2;
if (n==0) return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n>0 && n%2 == 0) {
long long total=0;
for (int i=1 ; i<=(n/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return ((W(n/2)*W((n/2)+1))/2) + total;
}
if (n>1 && n%2 == 1) {
long long total=0;
for (int i=1 ; i<=((n+1)/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0185, 2024-11-02 11:54:39, P--PPPPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k && k<=n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if (k>n) {
return 0;
}
if (k==0) return 1;
}
long long S(int n) { // Schroder Number
if (n>=2) {
long long total=0;
for (int k=1 ; k<=n-2 ; k++) {
total += S(k)*S(n-k-1);
}
return 3*S(n-1) + total;
}
if (n==1) return 2;
if (n==0) return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n>0 && n%2 == 0) {
long long total=0;
for (int i=1 ; i<=(n/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return ((W(n/2)*W((n/2)+1))/2) + total;
}
if (n>1 && n%2 == 1) {
long long total=0;
for (int i=1 ; i<=((n+1)/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0186, 2024-11-02 11:55:34, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (1<k && k<=n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if (k>n) {
return 0;
}
if (k==0) return 1;
}
long long S(int n) { // Schroder Number
if (n>=2) {
long long total=0;
for (int k=1 ; k<=n-2 ; k++) {
total += S(k)*S(n-k-1);
}
return 3*S(n-1) + total;
}
if (n==1) return 2;
if (n==0) return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n>0 && n%2 == 0) {
long long total=0;
for (int i=1 ; i<=(n/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + total;
}
if (n>1 && n%2 == 1) {
long long total=0;
for (int i=1 ; i<=((n+1)/2)-1 ; i++) {
total += (W(i)*W(n-i));
}
return total;
}
if (n==0) return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0187, 2024-11-02 12:04:58, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k>n) {
return 0;
}
if (k==0) return 1;
long long T1,T2,T3;
T1 = T(n, k-1);
T2 = T(n-1, k-1);
T3 = T(n-1, k);
return T1+T2+T3;
}
long long S(int n) { // Schroder Number
if (n>=2) {
long long total=0;
for (int k=1 ; k<=n-2 ; k++) {
total += S(k)*S(n-k-1);
}
return 3*S(n-1) + total;
}
if (n==1) return 2;
if (n==0) return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n>0 && n%2 == 0) {
long long total=0;
for (int i=1 ; i<=(n/2)-1 ; i++) {
total += W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + total;
}
if (n>1 && n%2 == 1) {
long long total=0;
for (int i=1 ; i<=((n+1)/2)-1 ; i++) {
total += (W(i)*W(n-i));
}
return total;
}
if (n==0) return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0188, 2024-11-02 11:32:19, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if(k>n) return 0;
if(k==0) return 1;
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
int sum{0};
for(int k{1};k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
int sum{0};
for(int i{1};i<=n/2-1;i++){
sum += W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}else{
int sum{0};
for(int i{1};i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0189, 2024-11-02 11:38:21, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if(k>n) return 0;
if(k==0) return 1;
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum{0};
for(long long k{1};k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum{0};
for(long long i{1};i<=n/2-1;i++){
sum += W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}else{
long long sum{0};
for(long long i{1};i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0190, 2024-11-02 11:41:32, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else if(k>n) return 0;
else if(k==0) return 1;
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum{0};
for(long long k{1};k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum{0};
for(long long i{1};i<=n/2-1;i++){
sum += W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}else{
long long sum{0};
for(long long i{1};i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0191, 2024-11-02 11:44:08, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
if(k==0) return 1;
if(k>n) return 0;
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum{0};
for(long long k{1};k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum{0};
for(long long i{1};i<=n/2-1;i++){
sum += W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}else{
long long sum{0};
for(long long i{1};i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0192, 2024-11-02 11:45:17, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
if(k>1&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum{0};
for(long long k{1};k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum{0};
for(long long i{1};i<=n/2-1;i++){
sum += W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}else{
long long sum{0};
for(long long i{1};i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0193, 2024-11-02 09:25:40, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) {
// Schroder Number
long long int x=0;
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else if (n>=2){
for(int i=1;i<=n-2;i++){
x+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+x;
}
}
long long W(int n) {
long long int y=0;
long long int z=0;
// Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n>0){
if(n%2==0){
for(int j=0;j<=(n/2)-1;j++){
z+=W(j)*W(n-j);
}
return (W(n/2)*(W(n/2)+1))/2+z;
}
else if(n%2!=0){
for(int i=1;i<=((n+1)/2)-1;i++){
y+=W(i)*W(n-i);
}
return y;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0194, 2024-11-02 09:26:33, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) {
// Schroder Number
long long int x=0;
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else if (n>=2){
for(int i=1;i<=n-2;i++){
x+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+x;
}
}
long long W(int n) {
long long int y=0;
long long int z=0;
// Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n>1){
if(n%2==0){
for(int j=0;j<=(n/2)-1;j++){
z+=W(j)*W(n-j);
}
return (W(n/2)*(W(n/2)+1))/2+z;
}
else if(n%2!=0){
for(int i=1;i<=((n+1)/2)-1;i++){
y+=W(i)*W(n-i);
}
return y;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0195, 2024-11-02 09:31:59, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) {
// Schroder Number
long long int x=0;
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else if (n>=2){
for(int i=1;i<=n-2;i++){
x+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+x;
}
}
long long W(int n) {
long long int y=0;
long long int z=0;
long long int a=n/2;
// Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n>1){
if(n%2==0){
for(int j=1;j<=(a-1);j++){
z+=W(j)*W(n-j);
}
return (W(a)*(W(a)+1))/2+z;
}
else if(n%2!=0){
for(int i=1;i<=((n-1)/2)-1;i++){
y+=W(i)*W(n-i);
}
return y;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0196, 2024-11-02 09:33:35, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) {
// Schroder Number
long long int x=0;
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else if (n>=2){
for(int i=1;i<=n-2;i++){
x+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+x;
}
}
long long W(int n) {
long long int y=0;
long long int z=0;
long long int a=n/2;
// Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n>1){
if(n%2==0){
for(int j=1;j<=(a-1);j++){
z+=W(j)*W(n-j);
}
return (W(a)*(W(a)+1))/2+z;
}
else if(n%2!=0){
for(int i=1;i<=((n-1)/2);i++){
y+=W(i)*W(n-i);
}
return y;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0197, 2024-11-02 09:23:34, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
else if(k>n)return 0;
else return(T(n,k-1)+(T(n-1,k-1)+(T(n-1,k))));
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
else{
int k=1;
long long count=0;
for(k;k<=n-2;k++){
count+=S(k)*S(n-k-1);
}
return(3*(S(n-1))+count);
}
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
else if(n==1)return 1;
else if(n%2==0){
int i=1;
long long count=0;
for(i;i<=n/2+1;i++){
count+=W(i)*W(n-i);
}
return((W(n/2)*(W(n/2)+1))/2+count);
}else{
int i=1;
long long count=0;
for(i;i<=(n+1)/2-1;i++){
count+=W(i)*W(n-i);
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0198, 2024-11-02 09:29:02, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
else if(k>n)return 0;
else return(T(n,k-1)+(T(n-1,k-1)+(T(n-1,k))));
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
else{
long long count=0;
for(int k=1;k<=n-2;k++){
count+=S(k)*S(n-k-1);
}
return(3*(S(n-1))+count);
}
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
else if(n==1)return 1;
if(n%2==0){
long long count=0;
for(int i=1;i<=n/2+1;i++){
count+=W(i)*W(n-i);
}
return(((W(n/2)*((W(n/2)+1)))/2)+count);
}else{
long long count=0;
for(int i=1;i<=((n+1)/2)-1;i++){
count+=W(i)*W(n-i);
}
return count;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0199, 2024-11-02 11:52:45, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
else if(k>n)return 0;
else return(T(n,k-1)+(T(n-1,k-1)+(T(n-1,k))));
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
else{
long long count=0;
for(int k=1;k<=n-2;k++){
count+=S(k)*S(n-k-1);
}
return(3*(S(n-1))+count);
}
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==0){
long long count=W(n/2)*(W(n/2)+1)/2;
for(int i=1;i<=(n/2)+1;i++){
count+=(W(i)*W(n-i));
}
return count;
}else{
long long count=0;
for(int i=1;i<=((n+1)/2)-1;i++){
count+=(W(i)*W(n-i));
}
return count;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0200, 2024-11-02 11:53:49, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
else if(k>n)return 0;
else return(T(n,k-1)+(T(n-1,k-1)+(T(n-1,k))));
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
else{
long long count=0;
for(int k=1;k<=n-2;k++){
count+=S(k)*S(n-k-1);
}
return(3*(S(n-1))+count);
}
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==0){
long long count=W(n/2)*(W(n/2)+1)/2;
for(int i=1;i<=(n/2)-1;i++){
count+=(W(i)*W(n-i));
}
return count;
}else{
long long count=0;
for(int i=1;i<=((n+1)/2)-1;i++){
count+=(W(i)*W(n-i));
}
return count;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0201, 2024-11-02 09:21:17, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n)
{ // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++)
{
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
int sum = 0;
if (n%2 == 0)
{
for (int i = 1; i < (n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return ((W(n/2) * (W(n/2)+1))/2) + sum;
}
for (int i = 1; i < ((n-1)/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0202, 2024-11-02 10:08:47, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n)
{ // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++)
{
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
int sum = 0;
if (n%2 == 0)
{
for (int i = 1; i < (n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return ((W(n/2) * (W(n/2)+1))/2) + sum;
}
for (int i = 1; i < ((n+1)/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0203, 2024-11-02 10:09:19, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n)
{ // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++)
{
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
int sum = 0;
if (n%2 == 0)
{
for (int i = 1; i < (n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return ((W(n/2) * (W(n/2)+1))/2) + sum;
}
else
{
for (int i = 1; i < ((n+1)/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0204, 2024-11-02 10:10:29, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n)
{ // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; k++)
{
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
int sum = 0;
if (n%2 == 0)
{
for (int i = 1; i <= (n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return ((W(n/2) * (W(n/2)+1))/2) + sum;
}
else
{
for (int i = 1; i <= ((n+1)/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0205, 2024-11-02 12:51:19, P--PPPPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n >= k && k > 1) return T(n-1,k)+T(n-1,k-1)+T(n,k-1);
else if( k > n ) return 0;
else if(k == 0) return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sum = 0 ;
for(int i = 1 ; i <= n-2 ; i++){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
else if(n==0) return 1;
else if(n==1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2 == 0){
long long sum = 0;
for(int i = 1 ; i < n/2 ; i++) sum+= W(i)+W(n-i);
return sum + W(n/2)*W(n/2+1)/2;
}
else{
long long sum = 0;
for(int i = 1 ; i < (n+1)/2 ; i++) sum+= W(i)+W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0206, 2024-11-02 14:02:07, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
else if(k == 0) return 1;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
long long sum = 0 ;
for(int i = 1 ; i <= n-2 ; i++){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2 == 0){
long long sum = 0;
for(int i = 1 ; i < n/2 ; i++) sum+= W(i)+W(n-i);
return sum + W(n/2)*W(n/2+1)/2;
}
else{
long long sum = 0;
for(int i = 1 ; i < (n+1)/2 ; i++) sum+= W(i)+W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0207, 2024-11-02 14:21:57, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
else if(k == 0) return 1;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
long long sum = 0 ;
for(int i = 1 ; i <= n-2 ; i++){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else{
if(n%2 == 0){
long long sum = 0;
for(int i = 1 ; i < (n/2) ; i++){
sum+= W(i)+W(n-i);
}
//cout << sum + W(n/2)*(W(n/2)+1)/2;
return sum + W(n/2)*(W(n/2)+1)/2;
}
else{
long long sum = 0;
for(int i = 1 ; i < (n+1)/2 ; i++) sum+= W(i)*W(n-i);
return sum;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0208, 2024-11-02 14:23:36, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
else if(k == 0) return 1;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
long long sum = 0 ;
for(int i = 1 ; i <= n-2 ; i++){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else{
if(n%2 == 0){
long long sum = 0;
for(int i = 1 ; i < (n/2) ; i++){
sum+= W(i)*W(n-i);
}
//cout << sum + W(n/2)*(W(n/2)+1)/2;
return sum + W(n/2)*(W(n/2)+1)/2;
}
else{
long long sum = 0;
for(int i = 1 ; i < (n+1)/2 ; i++) sum+= W(i)*W(n-i);
return sum;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0209, 2024-11-02 12:55:07, x-xPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n == k){
return 1;
}
if(k > n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
long long ans = 0;
for(int k = 1;k <= n-2 ;k++){
ans += S(k)*S(n-k-1);
}
return 3*S(n-1)+ans;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0){
long long ans = 0;
for(int i = 1;i <= (n/2) -1;i++){
ans += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + ans;
}
else{
long long ans = 0;
for(int i = 1;i <= ((n+1)/2)-1 ;i++){
ans += W(i)*W(n-1);
}
return ans;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0210, 2024-11-02 12:57:11, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
long long ans = 0;
for(int k = 1;k <= n-2 ;k++){
ans += S(k)*S(n-k-1);
}
return 3*S(n-1)+ans;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0){
long long ans = 0;
for(int i = 1;i <= (n/2) -1;i++){
ans += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + ans;
}
else{
long long ans = 0;
for(int i = 1;i <= ((n+1)/2)-1 ;i++){
ans += W(i)*W(n-1);
}
return ans;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0211, 2024-11-02 14:42:31, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
long long ans = 0;
for(int k = 1;k <= n-2 ;k++){
ans += S(k)*S(n-k-1);
}
return 3*S(n-1)+ans;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0 && n >= 2){
long long ans1 = 0;
for(int i = 1;i <= (n/2) -1;i++){
ans1 += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + ans1;
}
if(n % 2 != 0 && n >= 3){
long long ans = 0;
for(int i = 1;i <= ((n+1)/2)-1 ;i++){
ans += W(i)*W(n-1);
}
return ans;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0212, 2024-11-02 14:45:16, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n){
return 0;
}
if(k == 0){
return 1;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
long long ans = 0;
for(int k = 1;k <= n-2 ;k++){
ans += S(k)*S(n-k-1);
}
return 3*S(n-1)+ans;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0 && n >= 2){
long long ans1 = 0;
for(int i = 1;i <= (n*0.5) -1;i++){
ans1 += W(i)*W(n-i);
}
return (W(n*0.5)*(W(n*0.5)+1))*0.5 + ans1;
}
if(n % 2 != 0 && n >= 3){
long long ans = 0;
for(int i = 1;i <= ((n+1)*0.5)-1 ;i++){
ans += W(i)*W(n-i);
}
return ans;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0213, 2024-11-02 09:25:14, PPP-PPPPPP (90%)
#include <iostream>
using namespace std;
long long T(long long n, long long k) { // Schroder Triangle
if (k == 0) return 1;
else if (k > n) return 0;
else if (k > 1 && k <= n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(long long n) { // Schroder Number
if (n == 0 || n == 1) return 2;
else {
long long init = 3*S(n-1);
long long sum = 0;
for (long long k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return init + sum;
}
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
else if (n == 1) return 1;
else if ( n % 2 == 0) {
long long init = (W(n/2) * (W(n/2) + 1)) / 2;
long long sum =0;
for (long long i = 1; i <= ((n/2) - 1); i++) {
sum += W(i)*W(n-i);
}
return init + sum;
}
else if (n % 2 != 0) {
long long sum = 0;
for (long long i = 1; i <= ((n+1)/2) - 1; i++) {
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0214, 2024-11-02 09:27:45, PPP-PPPPPP (90%)
#include <iostream>
using namespace std;
long long T(long long n, long long k) { // Schroder Triangle
if (k == 0) return 1;
else if (k > n) return 0;
else return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(long long n) { // Schroder Number
if (n == 0 || n == 1) return 2;
else {
long long init = 3*S(n-1);
long long sum = 0;
for (long long k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return init + sum;
}
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
else if (n == 1) return 1;
else if ( n % 2 == 0) {
long long init = (W(n/2) * (W(n/2) + 1)) / 2;
long long sum = 0;
for (long long i = 1; i <= ((n/2) - 1); i++) {
sum += W(i)*W(n-i);
}
return init + sum;
}
else {
long long sum = 0;
for (long long i = 1; i <= ((n+1)/2) - 1; i++) {
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0215, 2024-11-02 12:03:55, PPP-PPPPPP (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
else if (k > n) return 0;
else return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0 || n == 1) return 2;
else {
long long init = 3*S(n-1);
long long sum = 0;
for (long long k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return init + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
else if (n == 1) return 1;
else if ( n % 2 == 0) {
long long init = (W(n/2) * (W(n/2) + 1)) / 2;
long long sum = 0;
for (long long i = 1; i <= ((n/2) - 1); i++) {
sum += W(i)*W(n-i);
}
return init + sum;
}
else {
long long sum = 0;
for (long long i = 1; i <= ((n+1)/2) - 1; i++) {
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0216, 2024-11-02 12:05:38, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
else if (k > n) return 0;
else return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
else {
long long init = 3*S(n-1);
long long sum = 0;
for (long long k = 1; k <= n-2; k++) {
sum += S(k) * S(n-k-1);
}
return init + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
else if (n == 1) return 1;
else if ( n % 2 == 0) {
long long init = (W(n/2) * (W(n/2) + 1)) / 2;
long long sum = 0;
for (long long i = 1; i <= ((n/2) - 1); i++) {
sum += W(i)*W(n-i);
}
return init + sum;
}
else {
long long sum = 0;
for (long long i = 1; i <= ((n+1)/2) - 1; i++) {
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0217, 2024-11-02 12:45:45, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1&&k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n){
return 0;
}
else if(k==0){
return 1;
}
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum=0;
for(int i=1;i<=n-2;i++){
sum+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum2=0;
for(int i=1;i<=((n/2)-1);i++){
sum2+=(W(i)*W(n-i));
}
return ((W(n/2))*(W(n/2)+1)/2)+sum2;
}
if(n%2==1){
long long sum3=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum3+=(W(i)*W(n-i));
}
return sum3;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0218, 2024-11-02 12:47:14, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
if(k>1&&k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n){
return 0;
}
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum=0;
for(int i=1;i<=n-2;i++){
sum+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum2=0;
for(int i=1;i<=((n/2)-1);i++){
sum2+=(W(i)*W(n-i));
}
return ((W(n/2))*(W(n/2)+1)/2)+sum2;
}
if(n%2==1){
long long sum3=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum3+=(W(i)*W(n-i));
}
return sum3;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0219, 2024-11-02 12:48:47, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
if(k>1&&k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
return 0;
}
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum=0;
for(int i=1;i<=n-2;i++){
sum+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum2=0;
for(int i=1;i<=((n/2)-1);i++){
sum2+=(W(i)*W(n-i));
}
return ((W(n/2))*(W(n/2)+1)/2)+sum2;
}
if(n%2==1){
long long sum3=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum3+=(W(i)*W(n-i));
}
return sum3;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0220, 2024-11-02 12:50:01, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(k>1&&k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum=0;
for(int i=1;i<=n-2;i++){
sum+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum2=0;
for(int i=1;i<=((n/2)-1);i++){
sum2+=(W(i)*W(n-i));
}
return ((W(n/2))*(W(n/2)+1)/2)+sum2;
}
if(n%2==1){
long long sum3=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum3+=(W(i)*W(n-i));
}
return sum3;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0221, 2024-11-02 09:20:40, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
{
return 1;
}
if (k > n)
{
return 0;
}
else if (n >= k)
{
long long id1 = T(n, k - 1);
long long id2 = T(n - 1, k - 1);
long long id3 = T(n - 1, k);
return (id1 + id2 + id3);
}
}
long long S(int n)
{ // Schroder Number
if (n == 0)
{
return 1;
}
else if (n == 1)
{
return 2;
}
long long sum = 0;
for (int k = 1; k <= n - 2; k++)
{
sum += (S(k) * S(n - k - 1));
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
{
return 0;
}
else if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
long long id1 = W(n / 2);
long long id2 = W(n / 2) + 1;
return (id1 + id2) / 2;
}
else
{
int s;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
s += (W(i) * W(n - i));
}
return s;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0222, 2024-11-02 09:21:26, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
{
return 1;
}
if (k > n)
{
return 0;
}
else if (n >= k)
{
long long id1 = T(n, k - 1);
long long id2 = T(n - 1, k - 1);
long long id3 = T(n - 1, k);
return (id1 + id2 + id3);
}
}
long long S(int n)
{ // Schroder Number
if (n == 0)
{
return 1;
}
else if (n == 1)
{
return 2;
}
long long sum = 0;
for (int k = 1; k <= n - 2; k++)
{
sum += (S(k) * S(n - k - 1));
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
{
return 0;
}
else if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
long long id1 = W(n / 2);
long long id2 = W(n / 2) + 1;
return (id1 + id2) / 2;
}
else if (n % 2 != 0)
{
long long s;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
s += (W(i) * W(n - i));
}
return s;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0223, 2024-11-02 09:21:38, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
{
return 1;
}
if (k > n)
{
return 0;
}
else if (n >= k)
{
long long id1 = T(n, k - 1);
long long id2 = T(n - 1, k - 1);
long long id3 = T(n - 1, k);
return (id1 + id2 + id3);
}
}
long long S(int n)
{ // Schroder Number
if (n == 0)
{
return 1;
}
else if (n == 1)
{
return 2;
}
long long sum = 0;
for (int k = 1; k <= n - 2; k++)
{
sum += (S(k) * S(n - k - 1));
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
{
return 0;
}
else if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
long long id1 = W(n / 2);
long long id2 = W(n / 2) + 1;
return (id1 + id2) / 2;
}
else if (n % 2 != 0)
{
long long s;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
s += (W(i) * W(n - i));
}
return s;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0224, 2024-11-02 11:38:49, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
{
return 1;
}
if (k > n)
{
return 0;
}
else if (n >= k)
{
long long id1 = T(n, k - 1);
long long id2 = T(n - 1, k - 1);
long long id3 = T(n - 1, k);
return (id1 + id2 + id3);
}
}
long long S(int n)
{ // Schroder Number
if (n == 0)
{
return 1;
}
else if (n == 1)
{
return 2;
}
long long sum = 0;
for (int k = 1; k <= n - 2; k++)
{
sum += (S(k) * S(n - k - 1));
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
{
return 0;
}
else if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
long long id1 = W(n / 2);
long long id2 = (W(n / 2)) + 1;
long long id3 = (id1 * id2) / 2;
long long m = 0;
for (int i = 1; i <= (n / 2 - 1); i++)
{
m += (W(i) * W(n - i));
}
return id3 + m;
}
else
{
long long s = 0;
for (int i = 1; i <= (((n + 1) / 2) - 1); i++)
{
long long id1 = W(i);
long long id2 = W(n - i);
s += (id1 * id2);
}
return s;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0225, 2024-11-02 14:37:22, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
long long right = 0;
if(k > n)
right = 0;
if(k == 0)
right = 1;
if(k >= 1 && k <= n)
{
right = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return right;
}
long long S(int n)
{
long long right = 0;
if(n == 0)
right = 1;
if(n == 1)
right = 2;
if(n > 2)
{
long long temp = 0;
for(int i = 1; i <= n-2; ++i)
{
temp += S(i)*S(n-i-1);
}
right = 3 * S(n-1) + temp;
}
return right;
}
long long W(int n)
{
long long right = 0;
if(n == 0)
right = 0;
if(n == 1)
right = 1;
if(n % 2 == 0 && n > 0)
{
long long temp = 0;
for(int i = 0; i <= (n/2)-1; ++i)
{
temp += (W(i) * W(n-i));
}
n = n/2;
right = (W(n)* (W(n)+1))/2 + temp;
}
else if(n % 2 != 0)
{
//long long temp = 0;
for(int i = 1; i < (n+1)/2-1; ++i)
right += W(i)*W(n-i);
}
return right;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0226, 2024-11-02 14:41:04, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
long long right = 0;
if(k > n)
right = 0;
if(k == 0)
right = 1;
if(k >= 1 && k <= n)
{
right = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return right;
}
long long S(int n)
{
long long right = 0;
if(n == 0)
right = 1;
if(n == 1)
right = 2;
if(n > 2)
{
long long temp = 0;
for(int i = 1; i <= n-2; ++i)
{
temp += S(i)*S(n-i-1);
}
right = 3 * S(n-1) + temp;
}
return right;
}
long long W(int n)
{
long long right = 0;
if(n == 0)
right = 0;
if(n == 1)
right = 1;
if(n % 2 == 0 && n > 0)
{
long long temp = 0;
for(int i = 1; i <= (n/2)-1; ++i)
{
temp += (W(i) * W(n-i));
}
n = n/2;
right = (W(n)* (W(n)+1))/2 + temp;
}
else if(n % 2 != 0)
{
//long long temp = 0;
for(int i = 1; i < (n+1)/2-1; ++i)
right += W(i)*W(n-i);
}
return right;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0227, 2024-11-02 14:45:17, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
long long right = 0;
if(k > n)
right = 0;
if(k == 0)
right = 1;
if(k >= 1 && k <= n)
{
right = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return right;
}
long long S(int n)
{
long long right = 0;
if(n == 0)
right = 1;
if(n == 1)
right = 2;
if(n > 2)
{
long long temp = 0;
for(int i = 1; i <= n-2; ++i)
{
temp += S(i)*S(n-i-1);
}
right = 3 * S(n-1) + temp;
}
return right;
}
long long W(int n)
{
long long right = 0;
if(n == 0)
right = 0;
if(n == 1)
right = 1;
if(n % 2 == 0 && n > 0)
{
long long temp = 0;
for(int i = 1; i <= (n/2)-1; ++i)
{
temp += (W(i) * W(n-i));
}
n = n/2;
right = (W(n)* (W(n)+1))/2 + temp;
}
else if(n % 2 != 0)
{
//long long temp = 0;
for(int i = 1; i <= (n+1)/2-1; ++i)
right += W(i)*W(n-i);
}
return right;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0228, 2024-11-02 14:46:20, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
long long right = 0;
if(k > n)
right = 0;
if(k == 0)
right = 1;
if(k >= 1 && k <= n)
{
right = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return right;
}
long long S(int n)
{
long long right = 0;
if(n == 0)
right = 1;
if(n == 1)
right = 2;
if(n >= 2)
{
long long temp = 0;
for(int k = 1; k <= n-2; ++k)
{
temp += S(k)*S(n-k-1);
}
right = 3 * S(n-1) + temp;
}
return right;
}
long long W(int n)
{
long long right = 0;
if(n == 0)
right = 0;
if(n == 1)
right = 1;
if(n % 2 == 0 && n > 0)
{
long long temp = 0;
for(int i = 1; i <= (n/2)-1; ++i)
{
temp += (W(i) * W(n-i));
}
n = n/2;
right = (W(n)* (W(n)+1))/2 + temp;
}
else if(n % 2 != 0)
{
//long long temp = 0;
for(int i = 1; i <= (n+1)/2-1; ++i)
right += W(i)*W(n-i);
}
return right;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0229, 2024-11-02 12:37:27, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0230, 2024-11-02 12:41:23, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long a1,a2=0;
a1 = 3*S(n-1);
for (int k=1;k<n-1;k++) {
a2+=S(k)*S(n-k-1);
}
return a1+a2;
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0231, 2024-11-02 12:48:04, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long a1,a2=0;
a1 = 3*S(n-1);
for (int k=1;k<n-1;k++) {
a2+=S(k)*S(n-k-1);
}
return a1+a2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
long long w1, w2=0;
w1 = (W(n/2)*(W(n/2)+1))/2;
for (int i=1; i<=((n/2)-1);i++) {
w2 += W(i)*W(n-i);
}
return w1+w2;
}
else {
long long w1=0;
for (int i=0;i<=((n+1)/2)-1;i++) {
w1 += W(i)*W(n-i);
}
return w1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0232, 2024-11-02 12:48:43, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long a1,a2=0;
a1 = 3*S(n-1);
for (int k=1;k<n-1;k++) {
a2+=S(k)*S(n-k-1);
}
return a1+a2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
long long w1, w2=0;
w1 = (W(n/2)*(W(n/2)+1))/2;
for (int i=1; i<=((n/2)-1);i++) {
w2 += W(i)*W(n-i);
}
return w1+w2;
}
else {
long long w1=0;
for (int i=1;i<=((n+1)/2)-1;i++) {
w1 += W(i)*W(n-i);
}
return w1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0233, 2024-11-02 10:51:59, Compilation error (0%)
#include <stdio.h>
#include <iostream>
#include <map>
#include <algorithm>
#include <vector>
#include <set>
#include <cctype>
#include <cmath>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
{
/* code */
return 1;
}
if (k > n)
{
/* code */
return 0;
}
if (1 < k & k <= n)
{
/* code */
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
}
long long S(int n)
{ // Schroder Number
if (n == 1)
{
/* code */
return 2;
}
if (n == 0)
{
/* code */
return 1;
}
if (n >= 2)
{
long long s1, s2;
long long k = 0;
k = n - 2;
s1 = 3 * (S(n - 1));
long long s2 = 0;
if (k >= 0)
{
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
long long sum1 = S(i);
long long sum2 = S(n - i - 1);
s2 += sum1 * sum2;
}
}
else
{
for (int i = 1; i >= k; i--)
{
/* code */
long long sum1 = S(i);
long long sum2 = S(n - i - 1);
s2 += sum1 * sum2;
}
}
return s1 + s2;
// /* code */
// long long sum = 0;
// for (int i = n - 2; i < 1; i++)
// {
// /* code */
// long long s1 = S(n);
// long long s2 = S(n - i - 1);
// sum += s1 * s2;
// }
// long long result = 3 * S(n - 1) + sum;
// return result;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
{
/* code */
return 0;
}
if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
/* code */
long long s1, s2, k;
s1 = (W(n / 2) * (W(n / 2) + 1)) / 2;
k = (n / 2) - 1;
s2 = 0;
if (k >= 0)
{
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
int sum1 = W(i);
int sum2 = W(n - i);
s2 += sum1 * sum2;
}
}
else
{
/* code */
for (int i = 1; i >= k; i--)
{
/* code */
int sum1 = W(i);
int sum2 = W(n - i);
s2 += sum1 * sum2;
}
}
return s1 + s2;
}
if (n % 2 != 0)
{
/* code */
long long k;
k = ((n + 1) / 2) - 1;
if (k >= 0)
{
long long s1 = 0;
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
long long sum1, sum2;
sum1 = W(i);
sum2 = W(n - i);
s1 += sum1 * sum2;
}
return s1;
}
else
{
long long s1 = 0;
/* code */
for (int i = 1; i >= k; i--)
{
/* code */
long long sum1, sum2;
sum1 = W(i);
sum2 = W(n - i);
s1 += sum1 * sum2;
}
return s1;
}
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0234, 2024-11-02 10:52:26, Compilation error (0%)
#include <stdio.h>
#include <iostream>
#include <map>
#include <algorithm>
#include <vector>
#include <set>
#include <cctype>
#include <cmath>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
{
/* code */
return 1;
}
if (k > n)
{
/* code */
return 0;
}
if (1 < k & k <= n)
{
/* code */
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
}
long long S(int n)
{ // Schroder Number
if (n == 1)
{
/* code */
return 2;
}
if (n == 0)
{
/* code */
return 1;
}
// if (n >= 2)
// {
// long long s1, s2;
// long long k = 0;
// k = n - 2;
// s1 = 3 * (S(n - 1));
// long long s2 = 0;
// if (k >= 0)
// {
// /* code */
// for (int i = 1; i <= k; i++)
// {
// /* code */
// long long sum1 = S(i);
// long long sum2 = S(n - i - 1);
// s2 += sum1 * sum2;
// }
// }
// else
// {
// for (int i = 1; i >= k; i--)
// {
// /* code */
// long long sum1 = S(i);
// long long sum2 = S(n - i - 1);
// s2 += sum1 * sum2;
// }
// }
// return s1 + s2;
// /* code */
// long long sum = 0;
// for (int i = n - 2; i < 1; i++)
// {
// /* code */
// long long s1 = S(n);
// long long s2 = S(n - i - 1);
// sum += s1 * s2;
// }
// long long result = 3 * S(n - 1) + sum;
// return result;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
{
/* code */
return 0;
}
if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
/* code */
long long s1, s2, k;
s1 = (W(n / 2) * (W(n / 2) + 1)) / 2;
k = (n / 2) - 1;
s2 = 0;
if (k >= 0)
{
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
int sum1 = W(i);
int sum2 = W(n - i);
s2 += sum1 * sum2;
}
}
else
{
/* code */
for (int i = 1; i >= k; i--)
{
/* code */
int sum1 = W(i);
int sum2 = W(n - i);
s2 += sum1 * sum2;
}
}
return s1 + s2;
}
if (n % 2 != 0)
{
/* code */
long long k;
k = ((n + 1) / 2) - 1;
if (k >= 0)
{
long long s1 = 0;
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
long long sum1, sum2;
sum1 = W(i);
sum2 = W(n - i);
s1 += sum1 * sum2;
}
return s1;
}
else
{
long long s1 = 0;
/* code */
for (int i = 1; i >= k; i--)
{
/* code */
long long sum1, sum2;
sum1 = W(i);
sum2 = W(n - i);
s1 += sum1 * sum2;
}
return s1;
}
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0235, 2024-11-02 10:54:57, PPPPPPPPPP (100%)
#include <stdio.h>
#include <iostream>
#include <map>
#include <algorithm>
#include <vector>
#include <set>
#include <cctype>
#include <cmath>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0 & n >= 0)
{
/* code */
return 1;
}
if (k > n)
{
/* code */
return 0;
}
if (1 < k & k <= n)
{
/* code */
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
}
long long S(int n)
{ // Schroder Number
if (n == 1)
{
/* code */
return 2;
}
if (n == 0)
{
/* code */
return 1;
}
if (n >= 2)
{
long long s1, s2;
long long k = 0;
k = n - 2;
s1 = 3 * (S(n - 1));
s2 = 0;
if (k >= 0)
{
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
long long sum1 = S(i);
long long sum2 = S(n - i - 1);
s2 += sum1 * sum2;
}
}
else
{
for (int i = 1; i >= k; i--)
{
/* code */
long long sum1 = S(i);
long long sum2 = S(n - i - 1);
s2 += sum1 * sum2;
}
}
return s1 + s2;
// /* code */
// long long sum = 0;
// for (int i = n - 2; i < 1; i++)
// {
// /* code */
// long long s1 = S(n);
// long long s2 = S(n - i - 1);
// sum += s1 * s2;
// }
// long long result = 3 * S(n - 1) + sum;
// return result;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
{
/* code */
return 0;
}
if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
/* code */
long long s1, s2, k;
s1 = (W(n / 2) * (W(n / 2) + 1)) / 2;
k = (n / 2) - 1;
s2 = 0;
if (k >= 0)
{
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
int sum1 = W(i);
int sum2 = W(n - i);
s2 += sum1 * sum2;
}
}
else
{
/* code */
for (int i = 1; i >= k; i--)
{
/* code */
int sum1 = W(i);
int sum2 = W(n - i);
s2 += sum1 * sum2;
}
}
return s1 + s2;
}
if (n % 2 != 0)
{
/* code */
long long k;
k = ((n + 1) / 2) - 1;
if (k >= 0)
{
long long s1 = 0;
/* code */
for (int i = 1; i <= k; i++)
{
/* code */
long long sum1, sum2;
sum1 = W(i);
sum2 = W(n - i);
s1 += sum1 * sum2;
}
return s1;
}
else
{
long long s1 = 0;
/* code */
for (int i = 1; i >= k; i--)
{
/* code */
long long sum1, sum2;
sum1 = W(i);
sum2 = W(n - i);
s1 += sum1 * sum2;
}
return s1;
}
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0236, 2024-11-02 09:16:35, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1<k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0237, 2024-11-02 09:28:20, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1<k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n>=2){
long long sum=0;
for(int k=1; k<=(n-2); k++){
sum +=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){ //even
long long sum2 =0;
for(int i=1; i<=(n/2)-1; i++){
sum2+= W(i)*W(n-1);
}
return ((W(n/2)*(W(n/2)+1))/2) + sum2;
}
if(n%2!=0){//odd
long long sum1=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum1 += W(i)*W(n-i);
}
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0238, 2024-11-02 09:31:34, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1<k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n>=2){
long long sum=0;
for(int k=1; k<=(n-2); k++){
sum +=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){ //even
long long sum2 =0;
for(int i=1; i<=(n/2)-1; i++){
sum2+= W(i)*W(n-i);
}
return (( W(n/2) * ( W(n/2)+1 ))/2) + sum2;
}
if(n%2!=0){//odd
long long sum1=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum1 += W(i)*W(n-i);
}
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0239, 2024-11-02 12:45:52, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) {
return 1;
}
else if(k > n){
return 0;
}
else if(1 < k && k <= n) {
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1;
}
else if(n == 1) {
return 2;
}
else {
long long sum = 0;
for(int i=1 ; i <= n-2 ; i++) {
sum += S(i) * S(n-i-1);
}
return 3 * S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
else if(n == 1) return 1;
else if(n%2 == 0) {
long long sum = 0;
for(int i=1 ; i<=(n/2)-1 ; i++) {
sum += W(i) * W(n-i);
}
return (W(n/2) * W(n/2 + 1)) / 2 + sum;
}
else if(n%2 == 1) {
long long sum = 0;
for(int i=1 ; i<=((n+1)/2)-1 ; i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0240, 2024-11-02 12:50:24, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) {
return 1;
}
else if(k > n){
return 0;
}
else if(1 < k && k <= n) {
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1;
}
else if(n == 1) {
return 2;
}
else {
long long sum = 0;
for(int i=1 ; i <= n-2 ; i++) {
sum += S(i) * S(n-i-1);
}
return 3 * S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
else if(n == 1) return 1;
else if(n%2 == 0) {
long long sum = 0;
for(int i=1 ; i<=(n/2)-1 ; i++) {
sum += W(i) * W(n-i);
}
return ((W(n/2) * W(n/2)+ 1))/2 + sum;
}
else if(n%2 == 1) {
long long sum = 0;
for(int i=1 ; i<=((n+1)/2)-1 ; i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0241, 2024-11-02 14:34:31, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) {
return 1;
}
else if(k > n){
return 0;
}
else if(1 < k && k <= n) {
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1;
}
else if(n == 1) {
return 2;
}
else {
long long sum = 0;
for(int k=1 ; k <= n-2 ; k++) {
sum += S(k) * S(n-k-1);
}
return 3 * S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) {
return 0;
}
else if(n == 1) {
return 1;
}
else if(n%2 == 0) {
long long sum = 0;
for(int i = 1 ; i <= (n/2)-1 ; i++) {
sum += W(i) * W(n-i);
}
return ((W(n/2) * (W(n/2)+ 1)))/2 + sum;
}
else if(n%2 == 1) {
long long sum = 0;
for(int i = 1 ; i <= ((n+1)/2)-1 ; i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0242, 2024-11-02 11:58:49, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) {
return 1;
}
if(k > n){
return 0;
}
if(k > 1 && k <=n ){
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
long long a = 0;
for(int k=1;k<=n-2;k++){
a += S(k)*S(n - k -1);
}
return 3*S(n-1) + a;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n%2 == 0){
long long a = 0;
long long b = 0;
a = ( W(n/2) * ( W(n/2) + 1 ))/2 ;
for(int i=1;i<=(n/2)-1;i++){
b += W(i)*W(n-i);
}
return a+ b;
}
else{
long long b = 0;
for(int i=1;i<=(n/2)-1;i++){
b += W(i)*W(n-i);
}
return b;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0243, 2024-11-02 12:05:45, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > 1 && k <=n ){
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
if(k > n){
return 0;
}
if(k == 0) {
return 1;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
long long a = 0;
for(int k=1;k<=n-2;k++){
a += S(k)*S(n - k -1);
}
return 3*S(n-1) + a;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n%2 == 0 && n >= 2){
long long a = 0;
long long b = 0;
a = ( W(n/2) * ( W(n/2) + 1 ))/2 ;
for(int i=1;i<=(n/2)-1;i++){
b += W(i)*W(n-i);
}
return a+ b;
}
else{
long long b = 0;
for(int i=1;i<=((n+1)/2)-1;i++){
b += W(i)*W(n-i);
}
return b;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0244, 2024-11-02 12:06:25, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) {
return 1;
}
if(k > n){
return 0;
}
if(k > 1 && k <=n ){
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
long long a = 0;
for(int k=1;k<=n-2;k++){
a += S(k)*S(n - k -1);
}
return 3*S(n-1) + a;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n%2 == 0 && n >= 2){
long long a = 0;
long long b = 0;
a = ( W(n/2) * ( W(n/2) + 1 ))/2 ;
for(int i=1;i<=(n/2)-1;i++){
b += W(i)*W(n-i);
}
return a+ b;
}
else{
long long b = 0;
for(int i=1;i<=((n+1)/2)-1;i++){
b += W(i)*W(n-i);
}
return b;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0245, 2024-11-02 09:26:19, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
else if (k > n)
return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
else if (n == 1)
return 2;
int out = 0;
for (int k = 1; k < n - 2; k++)
{
out += S(k) * S(n - k - 1);
}
return 3 * S(n - 1) + out;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
else if (n == 1)
return 1;
if (n % 2 == 0)
{
int out = 0;
for (int i = 1; i < (n / 2) - 1; i++)
{
out += W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1) / 2) + out;
}
else
{
int out = 0;
for (int i = 1; i < ((n + 1) / 2) - 1; i++)
{
out += W(i) * W(n - i);
}
return out;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0246, 2024-11-02 09:28:51, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
else if (k > n)
return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
else if (n == 1)
return 2;
int out = 0;
for (int k = 1; k <= (n / 2) - 2; k++)
{
out += S(k) * S(n - k - 1);
}
return (3 * S(n - 1)) + out;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
else if (n == 1)
return 1;
if (n % 2 == 0)
{
int out = 0;
for (int i = 1; i <= (n / 2) - 1; i++)
{
out += W(i) * W(n - i);
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + out;
}
else
{
int out = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
out += W(i) * W(n - i);
}
return out;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0247, 2024-11-02 09:37:00, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
else if (k > n)
return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
else if (n == 1)
return 2;
else if (n >= 2)
{
long long out = 0;
for (int k = 1; k <= n - 2; k++)
{
out += (S(k) * S(n - k - 1));
}
return (3 * S(n - 1)) + out;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
else if (n == 1)
return 1;
if (n % 2 == 0)
{
long long out = 0;
for (int i = 1; i <= (n / 2) - 1; i++)
{
out += W(i) * W(n - i);
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + out;
}
else
{
long long out = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
out += W(i) * W(n - i);
}
return out;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0248, 2024-11-02 11:25:00, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle'
//if (1 < k && k <= n)
if (k > n)
return 0;
if (k == 0)
return 1;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 0)
{
long long sum = 0;
for (int i = 1; i <= n / 2 - 1; i++)
{
sum += W(i) * W(n - 1);
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + sum;
}
if (n & 2 == 1)
{
long long sum = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0249, 2024-11-02 11:25:41, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle'
//if (1 < k && k <= n)
if (k > n)
return 0;
if (k == 0)
return 1;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 0)
{
long long sum = 0;
for (int i = 1; i <= n / 2 - 1; i++)
{
sum += W(i) * W(n - 1);
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + sum;
}
if (n % 2 == 1)
{
long long sum = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0250, 2024-11-02 11:28:43, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle'
//if (1 < k && k <= n)
if (k > n)
return 0;
if (k == 0)
return 1;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 0)
{
long long sum = 0;
for (int i = 1; i <= (n / 2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + sum;
}
long long sum = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0251, 2024-11-02 09:30:26, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(1<k&&k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
return 0;
}
return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sigma=0;
for(int k=1;k<=n-2;k++){
sigma+=(S(k)*S(n-k-1));
}
sigma+=3*S(n-1);
return sigma;
}
if(n==1)
return 2;
return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n%2==0&&n!=0){
int sigma=0;
for(int i=1;i<=(n/2)-1;i++){
sigma+=(W(i)*W(n-i));
}
sigma+=(W(n/2)*(W(n/2)+1))/2;
return sigma;
}
else if(n%2==1&&n!=1){
int sigma=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sigma+= W(i)*W(n-i);
}
return sigma;
}
if(n==1)
return 1;
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0252, 2024-11-02 09:34:14, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(1<k&&k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
return 0;
}
return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sigma=0;
for(int k=1;k<=n-2;k++){
sigma+=(S(k)*S(n-k-1));
}
sigma+=3*S(n-1);
return sigma;
}
if(n==1)
return 2;
return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n%2==0&&n!=0){
long long sigma=0;
for(int i=1;i<=(n/2)-1;i++){
sigma+=(W(i)*W(n-i));
}
sigma+=(W(n/2)*(W(n/2)+1))/2;
return sigma;
}
else if(n%2==1&&n!=1){
long long sigma=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sigma+= W(i)*W(n-i);
}
return sigma;
}
if(n==1)
return 1;
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0253, 2024-11-02 10:56:40, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n>=k){
if(k!=0)
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
else
return 1;
}
if(k>n){
return 0;
}
return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sigma=0;
for(int k=1;k<=n-2;k++){
sigma+=(S(k)*S(n-k-1));
}
sigma+=3*S(n-1);
return sigma;
}
if(n==1)
return 2;
return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n%2==0&&n!=0){
long long sigma=0;
for(int i=1;i<=(n/2)-1;i++){
sigma+=(W(i)*W(n-i));
}
sigma+=(W(n/2)*(W(n/2)+1))/2;
return sigma;
}
else if(n%2==1&&n!=1){
long long sigma=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sigma+= W(i)*W(n-i);
}
return sigma;
}
if(n==1)
return 1;
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0254, 2024-11-02 14:31:22, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){return 0;}
if(k == 0){return 1;}
return T(n,k - 1) + T(n - 1,k - 1) + T(n - 1,k) ;
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0255, 2024-11-02 14:37:26, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){return 0;}
if(k == 0){return 1;}
return T(n,k - 1) + T(n - 1,k - 1) + T(n - 1,k) ;
}
long long S(int n)
{ // Schroder Number
long long int ans = 0;
if (n == 0)
{
return 1;
}
if (n == 1)
{
return 2;
}
ans += 3*S(n-1);
for (size_t k = 1; k <= n-2; k++)
{
ans += S(k) * S(n-k-1);
}
return ans;
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0256, 2024-11-02 14:48:17, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k>n){return 0;}
if(k == 0){return 1;}
return T(n,k - 1) + T(n - 1,k - 1) + T(n - 1,k) ;
}
long long S(int n)
{ // Schroder Number
long long int ans;
if (n == 0)
{
return 1;
}
if (n == 1)
{
return 2;
}
ans += 3*S(n-1);
for (size_t k = 1; k <= n-2; k++)
{
ans += S(k) * S(n-k-1);
}
return ans;
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long int ans = 0;
if (n == 0)
{
return 0;
}
if (n == 1)
{
return 1;
}
if (n % 2 == 0)
{
ans += (W(n/2)*(W(n/2) + 1));
ans /= 2;
for (size_t i = 1; i <= (n/2) - 1; i++)
{
ans += W(i) * W(n-i);
}
return ans;
}
if (n % 2 == 1)
{
for (size_t i = 1; i <= ((n+1)/2) - 1; i++)
{
ans += W(i) * W(n-i);
}
return ans;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0257, 2024-11-02 09:29:24, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k- 1) + T(n- 1, k- 1) + T(n-1, k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
long long ans=0;
ans+=3*S(n-1);
int k;
for(k=1;k<n-3;k++){
ans+=S(k)*S(n-k-1);
}
return ans;
}
long long W(int n) { // Wedderburn–Etherington Number
long long ans=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0){
ans+=(W(n/2)*(W(n/2)+1))/2;
int i;
for(i=1;i<n/2;i++){
ans+=W(i)*(W(n-i));
}
}
else {
int i;
for(i=1;i<(n+1)/2;i++){
ans+=W(i)*(W(n-i));
}
}
return ans;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0258, 2024-11-02 10:53:28, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k- 1) + T(n- 1, k- 1) + T(n-1, k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
int ans=0;
ans+=3*S(n-1);
int k;
for(k=1;k<n-3;k++){
ans+=S(k)*S(n-k-1);
}
return ans;
}
long long W(int n) { // Wedderburn–Etherington Number
int ans=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0){
ans+=(W(n/2)*(W(n/2)+1))/2;
int i;
for(i=1;i<n/2;i++){
ans+=W(i)*(W(n-i));
}
}
else {
int i;
for(i=1;i<(n+1)/2;i++){
ans+=W(i)*(W(n-i));
}
}
return ans;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0259, 2024-11-02 10:54:27, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k- 1) + T(n- 1, k- 1) + T(n-1, k) ;
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
int ans=0;
ans+=3*S(n-1);
int k;
for(k=1;k<n-1;k++){
ans+=S(k)*S(n-k-1);
}
return ans;
}
long long W(int n) { // Wedderburn–Etherington Number
int ans=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0){
ans+=(W(n/2)*(W(n/2)+1))/2;
int i;
for(i=1;i<n/2;i++){
ans+=W(i)*(W(n-i));
}
}
else {
int i;
for(i=1;i<(n+1)/2;i++){
ans+=W(i)*(W(n-i));
}
}
return ans;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0260, 2024-11-02 12:52:14, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long sum=0;
for (int k=1;k<=n-2;k++) {
sum+=(S(k)*S(n-k-1));
}
sum+=(3*S(n-1));
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
long long sumeven=0;
for (int i=1;i<=n/2-1;i++) {
sumeven+=(W(i)*W(n-1));
}
return sumeven;
}
int sumodd=0;
for (int i=1;i<(n+1)/2-1;i++) {
sumodd+=(W(i)*W(n-i));
}
return sumodd;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0261, 2024-11-02 14:21:27, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long sum=0;
for (int k=1;k<=n-2;k++) {
sum+=(S(k)*S(n-k-1));
}
sum+=(3*S(n-1));
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
long long sumeven=0;
for (int i=1;i<=n/2-1;i++) {
sumeven+=(W(i)*W(n-1));
}
return sumeven;
}
long long sumodd=0;
for (int i=1;i<(n+1)/2-1;i++) {
sumodd+=(W(i)*W(n-i));
}
return sumodd;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0262, 2024-11-02 14:26:48, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long sum=0;
for (int k=1;k<=n-2;k++) {
sum+=(S(k)*S(n-k-1));
}
sum+=(3*S(n-1));
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
long long sumeven=0;
for (int i=1;i<=(n/2)-1;i++) {
sumeven+=(W(i)*W(n-i));
}
sumeven+=(W(n/2)*(W(n/2)+1))/2;
return sumeven;
}
long long sumodd=0;
for (int i=1;i<=((n+1)/2)-1;i++) {
sumodd+=(W(i)*W(n-i));
}
return sumodd;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0263, 2024-11-02 12:44:29, x--PPPxxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1>k && k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n) return 0;
else if(k==0) return 1;
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2){
int sum=0;
for(int i=1;i<=n-2;i++){
sum=sum+S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) {
if(n%2==0){
int first=(W(n/2)*(W(n/2)+1))/2;
int sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum=sum+(W(i)*W(n-i));
}
return first+sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0264, 2024-11-02 12:47:14, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>1 && k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n) return 0;
else if(k==0) return 1;
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2){
int sum=0;
for(int i=1;i<=n-2;i++){
sum=sum+S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
int first=(W(n/2)*(W(n/2)+1))/2;
int sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum=sum+(W(i)*W(n-i));
}
return first+sum;
}
if(n%2!=0){
int sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum=sum+(W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0265, 2024-11-02 12:50:49, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n) return 0;
if(k==0) return 1;
if(k>1 && k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
int sum=0;
for(int i=1;i<=n-2;i++){
sum=sum+S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
int first=(W(n/2)*(W(n/2)+1))/2;
int sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum=sum+(W(i)*W(n-i));
}
return first+sum;
}
if(n%2!=0){
int sum=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum=sum+(W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0266, 2024-11-02 12:45:31, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum = sum + S(k) + S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum = 0;
for(int i=1;i<(n/2)-1;i++){
sum = sum + (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)-1))/2) + sum;
}
if(n%2==1){
long long sum = 0;
for(int i=1;i<((n+1)/2)-1;i++){
sum = sum + (W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0267, 2024-11-02 13:48:21, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum = sum + (S(k)*S(n-k-1));
}
return 3*S(n-1) + sum;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum = 0;
for(int i=1;i<=(n/2)-1;i++){
sum = sum + (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)-1))/2) + sum;
}
if(n%2==1){
long long sum = 0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum = sum + (W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0268, 2024-11-02 13:50:14, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum = sum + (S(k)*S(n-k-1));
}
return 3*S(n-1) + sum;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum = 0;
for(int i=1;i<=(n/2)-1;i++){
sum = sum + (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2) + sum;
}
if(n%2==1){
long long sum = 0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum = sum + (W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0269, 2024-11-02 12:55:15, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum=0;
for(int i=1;i<n-2;i++){
sum+=S(i)*S(n-i-1);
}
long long p;
p=sum+3*S(n-1);
return p;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1)return 1;
if(n%2==0){
long long sum =0;
for(int k=1;k<(n/2-1);k++){
sum+=W(k)*W(n-k);
}
sum+=W(n/2)*(W(n/2)+1);
sum/=2;
return sum;
}
else if(n%2==1){
long long sum =0;
for(int i=1;i<((n+1)/2)-1;i++){
sum+=W(i)*W(n-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0270, 2024-11-02 15:01:26, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
if(n>=2){
long long sum = 3*S(n-1);
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1)return 1;
if(n%2==0){
long long sum =0;
for(int k=1;k<=(n/2-1);k++){
sum+=W(k)*W(n-k);
}
sum+=W(n/2)*(W(n/2)+1);
sum/=2;
return sum;
}
else if(n%2==1){
long long sum =0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0271, 2024-11-02 15:30:02, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
if(n>=2){
long long sum = 3*S(n-1);
for(int k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1)return 1;
if(n%2==0&&n!=0){
long long sum =0;
for(int k=1;k<=(n/2-1);k++){
sum+=W(k)*W(n-k);
}
sum+=W(n/2)*(W(n/2)+1)/2;
return sum;
}
else if(n%2==1&&n!=1){
long long sum =0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0272, 2024-11-02 09:33:16, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)
return 1;
if(k>n)
return 0;
else
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
return 1;
else if(n==1)
return 2;
long long s=3*S(n-1);
for(int i=1;i<n-1;i++){
s+=S(i)*S(n-i-1);
}
return s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
return 0;
else if(n==1)
return 1;
if(n%2==0){
long long s1 = (W(n/2)*(W(n/2)+1))/2;
long long kep = s1;
for(int i=1;i<n/2;i++){
s1+= W(i)*W(n-i);
}
}
else if(n%2!=0){
for(int i=1;i<(n+1)/2;i++){
kep += W(i)*W(n-i);
}
}
return kep;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0273, 2024-11-02 09:34:18, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)
return 1;
if(k>n)
return 0;
else
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
return 1;
else if(n==1)
return 2;
long long s=3*S(n-1);
for(int i=1;i<n-1;i++){
s+=S(i)*S(n-i-1);
}
return s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
return 0;
else if(n==1)
return 1;
long long s1 = (W(n/2)*(W(n/2)+1))/2;
long long kep = s1;
if(n%2==0){
for(int i=1;i<n/2;i++){
s1+= W(i)*W(n-i);
}
}
else if(n%2!=0){
for(int i=1;i<(n+1)/2;i++){
kep += W(i)*W(n-i);
}
}
return kep;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0274, 2024-11-02 10:33:59, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)
return 1;
if(k>n)
return 0;
else
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)
return 1;
else if(n==1)
return 2;
long long s=3*S(n-1);
for(int i=1;i<n-1;i++){
s+=S(i)*S(n-i-1);
}
return s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)
return 0;
else if(n==1)
return 1;
// long long s1 = (W(n/2)*(W(n/2)+1))/2;
// long long kep = s1;
if(n%2==0){
long long s1 = (W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<n/2;i++){
s1+= W(i)*W(n-i);
}
return s1;
}
else if(n%2!=0){
long long kep = 0;
for(int i=1;i<(n+1)/2;i++){
kep += W(i)*W(n-i);
}
return kep;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
}
// T 10 11
// T 100 0
// T 12 10
// S 0
// S 1
// S 20
// W 0
// W 1
// W 20 |
# 0275, 2024-11-02 09:21:05, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k ==0)return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long int sum = 0;
for(int i = 1;i<n-1;i++){
sum=sum+S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
int sum = 0;
for(int i = 1;i<n/2;i++){
sum = sum + W(i)*W(n-i);
}
return(W(n/2)*(W(n/2)+1))/2 + sum;
}else{
int sum = 0;
for(int i = 1;i<(n+1)/2;i++){
sum = sum + W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0276, 2024-11-02 12:02:45, Compilation error (0%)
#include<bits/stdc++.h>
using namespace std;
string check(bool a[5][5],int w,int h){
int num = 0;
for(int i = 0;i<3;i++){
for(int j = 0;j<3;j++){
if((i == 1&&j == 1)||w-1+i == -1||h-1+j == -1||w-1+i == 5||h-1+j == 5)continue;
if(a[w-1+i][h-1+j])num++;
}
}
return to_string(num);
}
void flood(bool a[5][5],string *b[5][5],int w,int h){
if(check(a,w,h) == "0"){
for(int i = 0;i<3;i++){
for(int j = 0;j<3;j++){
if((i == 1&&j == 1)||w-1+i == -1||h-1+j == -1||w-1+i == 5||h-1+j == 5)continue;
b[w-1+i][h-1+j] = &check(a,w-1+i,h-1+j);
flood(a,b,w-1+i,h-1+j);
}
}
}
}
int main() {
int w,h;
bool a[5][5] = {{1,0,0,0,0},{0,1,0,0,0},{1,0,0,0,0},{0,0,0,0,1},{1,0,0,0,1}};
//,b[5][5] = {{},{},{},{},{}},c[5][5] = {{},{},{},{},{}},d[5][5] = {{},{},{},{},{}},e[5][5] = {{},{},{},{},{}};
for(int i = 0;i<5;i++){
for(int j = 0;j<5;j++){
cout << a[i][j] << " ";
}
cout << endl;
}
cout <<endl;
for(int i = 0;i<5;i++){
for(int j = 0;j<5;j++){
cout << check(a,i,j) << " ";
}
cout << endl;
}
string board[5][5];
for(int i = 0;i<5;i++){
for(int j = 0;j<5;j++){
board[i][j] = "-";
}
}
while(cin >> w >> h){
w--;
h--;
if(w>4||h>4||w<0||h<0){
cout << "invalid input" << endl;
continue;
}
if(a[w][h]){
cout << "game over";
break;
}
else{
board[w][h] = check(a,w,h);
flood(a,&board,w,h);
}
cout << " 1 2 3 4 5" <<endl;
for(int i = 0;i<5;i++){
cout << i+1 << " ";
for(int j = 0;j<5;j++){
cout << board[i][j] << " ";
}
cout << endl;
}
}
} | # 0277, 2024-11-02 12:03:18, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k ==0)return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long int sum = 0;
for(int i = 1;i<n-1;i++){
sum=sum+S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
int sum = 0;
for(int i = 1;i<n/2;i++){
sum = sum + W(i)*W(n-i);
}
return(W(n/2)*(W(n/2)+1))/2 + sum;
}else{
int sum = 0;
for(int i = 1;i<(n+1)/2;i++){
sum = sum + W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0278, 2024-11-02 09:23:32, PPPP--PxxT (50%)
// 161
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
if(k==0){
return 1;
}
return T(n, k-1)+T(n-1, k-1)+T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}else if(n==1){
return 2;
}
long long total = 0;
for(long long k=1; k<=n-2; k++){
total += (3*S(n-1))+( S(k)*S(n-k-1) );
}
return total;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}else if(n==1){
return 1;
}
long long total = 0;
if(n%2==0){
for(long long i=1; i<=(n/2)-1; i++){
total += ( (W(n/2) * (W(n/2)+1)) / 2) + (W(i) * W(n-i));
}
}else{
for(long long i=1; i<=( (n+1)/2 )-1; i++){
total += ( W(i)*W(n-i) );
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0279, 2024-11-02 09:27:44, PPPPPPP--- (70%)
// 161
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
if(k==0){
return 1;
}
return T(n, k-1)+T(n-1, k-1)+T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}else if(n==1){
return 2;
}
long long total = 0;
for(long long k=1; k<=n-2; k++){
total += ( S(k)*S(n-k-1) );
}
return (3*S(n-1))+total;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}else if(n==1){
return 1;
}
long long total = 0;
if(n%2==0){
for(long long i=1; i<=(n/2)-1; i++){
total += ( (W(n/2) * (W(n/2)+1)) / 2) + (W(i) * W(n-i));
}
}else{
for(long long i=1; i<=( (n+1)/2 )-1; i++){
total += ( W(i)*W(n-i) );
}
}
return total;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0280, 2024-11-02 09:29:30, PPPPPPPPPP (100%)
// 161
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
if(k==0){
return 1;
}
return T(n, k-1)+T(n-1, k-1)+T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}else if(n==1){
return 2;
}
long long total = 0;
for(long long k=1; k<=n-2; k++){
total += ( S(k)*S(n-k-1) );
}
return (3*S(n-1))+total;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}else if(n==1){
return 1;
}
long long total = 0;
if(n%2==0){
for(long long i=1; i<=(n/2)-1; i++){
total += (W(i) * W(n-i));
}
}else{
for(long long i=1; i<=( (n+1)/2 )-1; i++){
total += ( W(i)*W(n-i) );
}
}
if(n%2==0){
return ( (W(n/2) * (W(n/2)+1)) / 2) + total;
}else{
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0281, 2024-11-02 13:00:13, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1 ;
else if(k > n) return 0 ;
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k) ;
}
long long S(int n) { // Schroder Number
if(n == 0) return 1 ;
else if (n == 1) return 2 ;
long long s ;
for(long long k = 1 ; k <= n - 2 ; k++) {
s = S(k) * S(n - k - 1) ;
}
return (3 * S(n - 1)) + s ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0 ;
else if(n == 1) return 1 ;
long long w ;
if((n % 2 == 0) && (n > 0)) {
for(long long i = 1 ; i <= ((n / 2) - 1) ; i++) {
w = W(i) * W(n - i) ;
}
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + w ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0282, 2024-11-02 13:11:48, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1 ;
else if(k > n) return 0 ;
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k) ;
}
long long S(int n) { // Schroder Number
if(n == 0) return 1 ;
else if (n == 1) return 2 ;
long long s = 0 ;
for(long long k = 1 ; k <= n - 2 ; k++) {
s += S(k) * S(n - k - 1) ;
}
return (3 * S(n - 1)) + s ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0 ;
else if(n == 1) return 1 ;
long long w = 0 ;
for(long long i = 1 ; i <= ((n / 2) - 1) ; i++) {
w += W(i) * W(n - i) ;
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + w ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0283, 2024-11-02 13:21:59, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1 ;
else if(k > n) return 0 ;
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k) ;
}
long long S(int n) { // Schroder Number
if(n == 0) return 1 ;
else if (n == 1) return 2 ;
long long s = 0 ;
for(long long k = 1 ; k <= n - 2 ; k++) {
s += S(k) * S(n - k - 1) ;
}
return (3 * S(n - 1)) + s ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0 ;
else if(n == 1) return 1 ;
long long w = 0 ;
if(n % 2 == 0) {
for(long long i = 1 ; i <= ((n / 2) - 1) ; i++) {
w += W(i) * W(n - i) ;
}
return ((W(n / 2) * (W(n / 2) + 1)) / 2) + w ;
}
if(n % 2 == 1) {
for(long long i = 1 ; i <= (((n + 1)/ 2) - 1) ; i++) {
w += W(i) * W(n - i) ;
}
return w ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0284, 2024-11-02 12:52:00, P--PPPP--- (50%)
#include <iostream>
using namespace std;
long long T(long long n, long long k) { // Schroder Triangle
if(k>1&&k<=n){
return T(n,k-1)+T(n-1,k-1) +T(n-1,k);
}
if(k>n){
return 0;}
if(k==0){return 1;}
}
long long S(int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
long long sum=0;
for(int k=1;k<n-1;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(long long n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==0){
long long sum=0,ss;
ss=(W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<(n/2)+1;i++){
sum+=W(i)*W(n-i);
}
return ss+sum;
}
long long st=0;
for(int i=1;i<(((n+1)/2)-1);i++){
st+=W(i)*W(n-i);
}
return st;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0285, 2024-11-02 12:56:31, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(long long n, long long k) { // Schroder Triangle
if(k>1&&k<=n){
return T(n,k-1)+T(n-1,k-1) +T(n-1,k);
}
if(k>n){
return 0;}
if(k==0){return 1;}
}
long long S(int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
long long sum=0;
for(int k=1;k<n-1;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(long long n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==0){
long long sum=0,ss;
ss=(W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<=(n/2)-1;i++){
sum+=W(i)*W(n-i);
}
return ss+sum;
}
if(n%2!=0){
long long st=0;
for(int i=1;i<=(((n+1)/2)-1);i++){
st+=W(i)*W(n-i);
}
return st;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0286, 2024-11-02 15:19:40, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>=1&&k<=n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
return 0;
}
if(k==0){return 1;}
}
long long S(int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
long long sum=0;
for(int k=1;k<n-1;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(long long n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==0){
long long sum=0,ss;
ss=(W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<=(n/2)-1;i++){
sum+=W(i)*W(n-i);
}
return ss+sum;
}
if(n%2!=0){
long long st=0;
for(int i=1;i<=(((n+1)/2)-1);i++){
st+=W(i)*W(n-i);
}
return st;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0287, 2024-11-02 10:13:42, TTTPPPP--T (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return T(n,k);
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int sum=0;
for(int i=1;i<=n-2;++i){
sum+=S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n>1){
if(n%2==1){
int sum=0;
for(int i=1;i<(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
if(n%2==0){
int sum=0;
for(int i=1;i<n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum+(W(n/2)*(W(n/2)+1))/2;
}
}
if(n==1) return 1;
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
}
/*
T 10 11
T 100 0
T 12 10
S 0
S 1
S 20
W 0
W 1
W 20
*/ | # 0288, 2024-11-02 10:41:25, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;++k){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==1) return 1;
if(n==0) return 0;
if(n>1){
if(n%2==1){
int sum=0;
for(int i=1;i<(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
if(n%2==0){
int sum=0;
for(int i=1;i<n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum+(W(n/2)*(W(n/2)+1))/2;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
}
/*
T 10 11
T 100 0
T 12 10
S 0
S 1
S 20
W 0
W 1
W 20
*/ | # 0289, 2024-11-02 10:44:12, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;++k){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==1) return 1;
if(n==0) return 0;
if(n%2==1){
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
if(n%2==0){
long long sum=0;
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum+(W(n/2)*(W(n/2)+1))/2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
}
/*
T 10 11
T 100 0
T 12 10
S 0
S 1
S 20
W 0
W 1
W 20
*/ |
# 0290, 2024-11-02 09:19:07, TTTP--P--T (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k>n) return 0;
if (k = 0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k-1);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
int sum = 0;
sum += 3*S(n-1);
for (int k=1;k<=n-2;k++) {
sum += S(k)*S(k-1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
int sum = 0;
if (n%2==0) {
sum += W(n/2)*(W(n/2)+1);
for (int i=1;i<=(n/2)-1;i++) {
sum += W(i)*W(i-1);
}
}
if (n%2!=0) {
for (int i=1;i<=((n+1)/2)-1;i++) {
sum += W(i)*W(i-1);
}
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0291, 2024-11-02 09:19:30, P--P--P--- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k>n) return 0;
if (k == 0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k-1);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
int sum = 0;
sum += 3*S(n-1);
for (int k=1;k<=n-2;k++) {
sum += S(k)*S(k-1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
int sum = 0;
if (n%2==0) {
sum += W(n/2)*(W(n/2)+1);
for (int i=1;i<=(n/2)-1;i++) {
sum += W(i)*W(i-1);
}
}
if (n%2!=0) {
for (int i=1;i<=((n+1)/2)-1;i++) {
sum += W(i)*W(i-1);
}
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0292, 2024-11-02 09:26:07, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k>n) return 0;
if (k == 0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long int sum = 0;
sum += 3*S(n-1);
for (int k=1;k<=n-2;k++) {
sum += S(k)*S(n-k-1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long int sum = 0;
if (n%2==0) {
sum += (W(n/2)*(W(n/2)+1))/2;
for (int i=1;i<=(n/2)-1;i++) {
sum += W(i)*W(n-i);
}
}
if (n%2!=0) {
for (int i=1;i<=((n+1)/2)-1;i++) {
sum += W(i)*W(n-i);
}
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0293, 2024-11-02 09:44:15, PPPP--PPP- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
if (k > n)
{
return 0;
}
if (1 < k <= n)
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
if (n >= 2)
{
long long result = 0;
for (int i = 1; i <= -2; i-- )
{
result += S(i) * S(n - i - 1);
}
result += 3 * (S(n - 1));
return result;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 0)
{
long long w1 = 0, w2 = 0;
w1 = (W(n / 2) * (W(n / 2) + 1)) / 2;
for (int i = 1; i <= (n / 2) - 1; i++)
{
w2 += (W(i) * W(n - i));
}
return w1 + w2;
}
if (n % 2 == 1)
{
long long w2 = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
w2 += (W(i) * W(n - i));
}
return w2;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0294, 2024-11-02 09:47:03, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
if (k > n)
{
return 0;
}
if (1 < k <= n)
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
if (n >= 2)
{
long long result = 0,final = 0;
for (int i = 1; i <= (n-2); i++ )
{
result += S(i) * S(n - i - 1);
}
final = result + 3 * (S(n - 1));
return final;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 0)
{
long long w1 = 0, w2 = 0;
w1 = (W(n / 2) * (W(n / 2) + 1)) / 2;
for (int i = 1; i <= (n / 2) - 1; i++)
{
w2 += (W(i) * W(n - i));
}
return w1 + w2;
}
if (n % 2 == 1)
{
long long w2 = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++)
{
w2 += (W(i) * W(n - i));
}
return w2;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0295, 2024-11-02 12:55:05, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if (k>n) return 0;
else return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if (n ==1) return 2;
else{
long long sum = 0;
for (int k = 1; k <= n-2; k++){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) return n;
else if (n % 2 == 1){
long long sum = 0;
for(int i = 1; i <= (((n+1)/2) -1); i++){
sum += W(i) * W(n-i);
}
return sum;
}
else{
long long sum = 0;
for(int i = 1; i <= ((n/2) -1); i++){
sum += W(i) * W(n-i);
}
return W(n/2)*((W(n/2)+1)/2) + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0296, 2024-11-02 12:57:32, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if (k>n) return 0;
else return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if (n ==1) return 2;
else{
long long sum = 0;
for (int k = 1; k <= n-2; k++){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0 || n==1) return n;
else if (n % 2 == 1){
long long sum = 0;
for(int i = 1; i <= (((n+1)/2) -1); i++){
sum += W(i) * W(n-i);
}
return sum;
}
else{
long long sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum += W(i) * W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0297, 2024-11-02 09:20:44, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k > n)
{
return 0;
}
else if (k == 0)
{
return 1;
}
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
{
return 1;
}
else if (n == 1)
{
return 2;
}
long long sum = 0;
for (int k = 1; k <= n - 2; k++)
{
sum += (S(k) * S(n - k - 1));
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0 || n == 1)
{
return n;
}
if (n % 2 == 0)
{
long long sum = 0;
for (int i = 1; i < n / 2 - 1; i++)
{
sum += W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sum;
}
else
{
long long sum = 0;
for (int i = 1; i < (n + 1) / 2 - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0298, 2024-11-02 09:23:35, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k > n)
{
return 0;
}
else if (k == 0)
{
return 1;
}
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
{
return 1;
}
else if (n == 1)
{
return 2;
}
long long sum = 0;
for (int k = 1; k <= n - 2; k++)
{
sum += (S(k) * S(n - k - 1));
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0 || n == 1)
{
return n;
}
if (n % 2 == 0)
{
long long sum = 0;
for (int i = 1; i <= n / 2 - 1; i++)
{
sum += W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sum;
}
else
{
long long sum = 0;
for (int i = 1; i <= (n + 1) / 2 - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0299, 2024-11-02 12:40:07, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
if(1<k && k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n == 1) return 2;
if(n>=2) {
int sum = 3*S(n-1);
for(int k = 1 ; k <= n-2 ; k++) {
sum+=(S(k)*S(n-k-1));
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n == 1) return 1;
if(n%2 == 0) {
int sum = W(n/2)*(W(n/2)+1);
for(int i = 1 ; i <= (n/2)-1 ; i++) {
sum+=W(i)*W(n-i);
}
return sum;
}
if(n%2 != 0) {
int sums = 0;
for(int i = 1 ; i <= ((n+1)/2)-1 ; i++) {
sums+=W(i)*W(n-i);
}
return sums;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0300, 2024-11-02 12:41:15, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
if(1<k && k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n == 1) return 2;
if(n>=2) {
int sum = 3*S(n-1);
for(int k = 1 ; k <= n-2 ; k++) {
sum+=(S(k)*S(n-k-1));
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n == 1) return 1;
if(n%2 == 0) {
int sum = (W(n/2)*(W(n/2)+1))/2;
for(int i = 1 ; i <= (n/2)-1 ; i++) {
sum+=W(i)*W(n-i);
}
return sum;
}
if(n%2 != 0) {
int sums = 0;
for(int i = 1 ; i <= ((n+1)/2)-1 ; i++) {
sums+=W(i)*W(n-i);
}
return sums;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0301, 2024-11-02 11:28:22, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k==0)
{
return 1;
}
else if (k>n)
{
return 0;
}
else if(k>1&&k<=n)
{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if (n==0)
{
return 1;
}
if (n==1)
{
return 2;
}
else if (n>=2)
{
long long tmp =0;
for (int i = 1 ; i <=n-2 ; i++)
{
tmp+=(S(i)*S(n-i-1));
}
return 3*(S(n-1))+tmp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
else if (n==1) return 1;
else if (n%2==1)
{
long long tmp=0;
for (int i = 1 ;i<=((n+1)/2)-1 ; i++)
{
tmp+=W(i)*W(n-i);
}
return tmp;
}
else if (n%2==0)
{
long long tmp1=0;
long long tmp2=0;
tmp1 = W(n/2)*(W(n/2)+1);
for (int i = 1 ;i<=((n)/2)-1 ; i++)
{
tmp2+=W(i)*W(n-i);
}
return tmp1+tmp2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0302, 2024-11-02 11:32:30, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k==0)
{
return 1;
}
else if (k>n)
{
return 0;
}
else if(k>1&&k<=n)
{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if (n==0)
{
return 1;
}
if (n==1)
{
return 2;
}
else if (n>=2)
{
long long tmp =0;
for (int i = 1 ; i <=n-2 ; i++)
{
tmp+=(S(i)*S(n-i-1));
}
return 3*(S(n-1))+tmp;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
else if (n==1) return 1;
else if (n%2==1)
{
long long tmp=0;
for (int i = 1 ;i<=((n+1)/2)-1 ; i++)
{
tmp+=W(i)*W(n-i);
}
return tmp;
}
else if (n%2==0)
{
long long tmp1=0;
long long tmp2=0;
tmp1 = (W(n/2)*(W(n/2)+1))/2;
for (int i = 1 ;i<=(n/2)-1 ; i++)
{
tmp2+=W(i)*W(n-i);
}
return tmp1+tmp2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0303, 2024-11-02 14:33:45, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
else if(k==0) return 1;
else if(1<k && k<=n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
long long ans=0;
long long temp=0;
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2)
{
ans+=3*S(n-1);
for(int k=1;k<=n-2;++k)
{
temp+=S(k)*S(n-k-1);
}
}
ans = ans+temp;
return ans;
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
long long ev=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0&&n!=0) //even
{
sum+=( W(n/2)*(W(n/2)+1)/2);
for(int i=1;i<(n/2)-1;++i)
{
sum+=W(i)*W(n-i);
}
}
else if(n%2!=0 && n!=1) //odd
{
for(int i=1;i<=((n+1)/2)-1;++i)
{
sum+=W(i)*W(n-i);
}
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0304, 2024-11-02 15:18:28, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
else if(k==0) return 1;
else if(1<k && k<=n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
long long ans=0;
long long temp=0;
if(n==0) return 1;
else if(n==1) return 2;
else if(n>=2)
{
ans+=3*S(n-1);
for(int k=1;k<=n-2;++k)
{
temp+=S(k)*S(n-k-1);
}
}
ans = ans+temp;
return ans;
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum=0;
long long ev=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0) //even
{
sum+=( W(n/2)*(W(n/2)+1)/2);
for(int i=1;i<=(n/2)-1;++i)
{
sum+=W(i)*W(n-i);
}
}
else if(n%2!=0) //odd
{
for(int i=1;i<=((n+1)/2)-1;++i)
{
sum+=W(i)*W(n-i);
}
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0305, 2024-11-02 11:21:43, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) {
return 1;
}
if (n == 1) {
return 2;
}
long long int sum = 0;
for (long long int k = 1; k <= (n-2); k++) {
sum += ((S(k))*(S(n-k-1)));
}
return (3*(S(n-1))) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0;
}
if (n == 1) {
return 1;
}
long long int w = 0;
long long int sum = 0;
if (n%2 == 1) {
for (long long int i = 1; i <= (((n+1)/2)-1); i++) {
sum += ((W(i))*(W(n-i)));
}
return sum;
}
if (n%2 == 0) {
for (long long int i = 1; i <= ((n/2)-1); i++) {
sum += ((W(i))*(W(n-i)));
}
w = (((W(n/2))*(W((n/2)+1)))/2) + sum;
return w;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0306, 2024-11-02 11:24:05, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1;
}
if (k > n) {
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) {
return 1;
}
if (n == 1) {
return 2;
}
long long int sum = 0;
for (long long int k = 1; k <= (n-2); k++) {
sum += ((S(k))*(S(n-k-1)));
}
return (3*(S(n-1))) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0;
}
if (n == 1) {
return 1;
}
long long int w = 0;
long long int sum = 0;
if (n%2 == 1) {
for (long long int i = 1; i <= (((n+1)/2)-1); i++) {
sum += ((W(i))*(W(n-i)));
}
return sum;
}
if (n%2 == 0) {
for (long long int i = 1; i <= ((n/2)-1); i++) {
sum += ((W(i))*(W(n-i)));
}
w = (((W(n/2))*(W((n/2))+1))/2) + sum;
return w;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0307, 2024-11-02 09:21:52, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}else if(k>n){
return 0;
}else{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum =0;
for(int i =1;i<=n-2;i++){
sum+=S(i)*(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0 ;
if(n==1)return 1;
if(n%2==0){
long long sum=0;
for(int i =1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1)/2)+sum;
}else{
long long sum= 0;
for(int i =1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0308, 2024-11-02 09:25:33, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}else if(k>n){
return 0;
}else{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum =0;
for(long i =1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return (3*S(n-1))+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0 ;
if(n==1)return 1;
if(n%2==0){
long long sum=0;
for(int i =1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1)/2)+sum;
}else{
long long sum= 0;
for(int i =1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0309, 2024-11-02 09:23:02, TT-PPPPPP- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n > k)
{
return 0 ;
} else if (k == 0)
{
return 1;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if (n == 0 )
{
return 1;
} else if (n==1)
{
return 2;
}
long long sum = 0 ;
for (int i = 1; i <= n-2; ++i)
{
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) {
if (n == 0 )
{
return 0;
} else if (n == 1)
{
return 1;
}
long long sum = 0 ;
if ( n%2 == 0)
{
for (int i = 1; i <= (n/2) -1 ; ++i)
{
sum+= W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 +sum;
}
for (int i = 1; i <= ((n+1)/2) -1 ; ++i)
{
sum += W(i)*W(n-i);
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0310, 2024-11-02 09:25:08, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n)
{
return 0 ;
} else if (k == 0)
{
return 1;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
if (n == 0 )
{
return 1;
} else if (n==1)
{
return 2;
}
long long sum = 0 ;
for (int i = 1; i <= n-2; ++i)
{
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) {
if (n == 0 )
{
return 0;
} else if (n == 1)
{
return 1;
}
long long sum = 0 ;
if ( n%2 == 0)
{
for (int i = 1; i <= (n/2) -1 ; ++i)
{
sum+= W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 +sum;
}
for (int i = 1; i <= ((n+1)/2) -1 ; ++i)
{
sum += W(i)*W(n-i);
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0311, 2024-11-02 09:26:29, PPPPPPP--- (70%)
//BossPaul
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){return 1;}
if(k>n){return 0;}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
long long sum=0;
for(int i=1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==0){
long long sum=0;
for(int i=1;i<(n/2-1);i++){
sum+=(W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}else{
long long sum=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0312, 2024-11-02 09:28:40, PPPPPPPPPP (100%)
//BossPaul
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){return 1;}
if(k>n){return 0;}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
long long sum=0;
for(int i=1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==0){
long long sum=0;
for(int i=1;i<=(n/2-1);i++){
sum+=(W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}else{
long long sum=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0313, 2024-11-02 09:28:22, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long s = 0;
for(int k=1;k<=n-2;k++){
s += S(k)*S(n-k-1);
}
return 3*S(n-1)+s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2 == 1){ // odd
long long w = 0;
for(int i=1;i<=((n+1)/2)-1;i++){
w += W(i)*W(n-i);
}
return w;
}else{ // even
long long w = 0;
for(int i=1;i<=(n/2)-1;i++){
w += W(i)*W(n-i);
}
return ((W(n/2)*W((n/2)+1))/2)+w;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0314, 2024-11-02 11:39:59, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long s = 0;
for(int k=1;k<=n-2;k++){
s += S(k)*S(n-k-1);
}
return 3*S(n-1)+s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2 == 1){ // odd
long long w = 0;
for(int i=1;i<=((n+1)/2)-1;i++){
w += W(i)*W(n-i);
}
return w;
}else{ // even
long long w = 0;
for(int i=1;i<=(n/2)-1;i++){
w += W(i)*W(n-i);
}
return ((W(n/2)*(W((n/2))+1))/2)+w;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0315, 2024-11-02 09:26:57, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
else if(k == 0){
return 1;
}
else if(1 < k && k <= n ){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n==1){
return 2;
}
else if(n == 0){
return 1;
}
else if(n >= 2){
int sum = 0;
for(int i = 1;i<=n-2;i++ ){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
else if(n == 1){
return 1;
}
else if(n % 2 == 0){
int sum = 0;
for(int i = 1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return ( (W(n/2)* W((n/2)+1))/2 ) + sum;
}
else if(n % 2 != 0){
int sum = 0;
for(int i = 1;i<=((n+1)/2)-1;i++){
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0316, 2024-11-02 11:04:50, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
else if(k == 0){
return 1;
}
else if(1 < k && k <= n ){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n==1){
return 2;
}
else if(n == 0){
return 1;
}
else if(n >= 2){
int sum = 0;
for(int i = 1;i<=n-2;i++ ){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
else if(n == 1){
return 1;
}
else if((n % 2) == 0){
int sum = 0;
for(int i = 1;i<=(n/2)-1;i++){
sum += W(i)*W(n-i);
}
return ( (W(n/2)* (W(n/2)+1))/2 ) + sum;
}
else{
int sum = 0;
for(int i = 1;i <= ((n+1)/2)-1;i++){
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0317, 2024-11-02 12:48:28, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0)
return 1;
else if (k>n)
return 0;
else{
return(T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
}
long long S(int n) { // Schroder Number
if (n==0)
return 1;
else if (n==1)
return 2;
else{
long long result =0;
result+=3*S(n-1);
for (int k=1; k<= n-2; k++){ //check if its < or <=
result += S(k)*S(n-k-1);
}
return result;
}
}
long long W(int n) { // Wedderburn–Etherington Number
long long result =0;
if (n==0)
return 0;
else if (n==1)
return 1;
else if (n%2 ==0) // if even
{
result += (W(n/2) * (W(n/2)+1)) / 2;
for (int i=1; i<= (n/2)-1; i++){
result +=(W(i)*W(n-i));
}
return result;
}
else //if odd
{
for (int i =0; i<= ((n+1)/2)-1; i++){
result += W(i)*W(n-i);
}
return result;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0318, 2024-11-02 12:54:29, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0)
return 1;
else if (k>n)
return 0;
else{
return(T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
}
long long S(int n) { // Schroder Number
if (n==0)
return 1;
else if (n==1)
return 2;
else{
long long result =0;
result+=3*S(n-1);
for (int k=1; k<= n-2; k++){ //check if its < or <=
result += S(k)*S(n-k-1);
}
return result;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0)
return 0;
else if (n==1)
return 1;
else if (n%2 == 0) // if even
{
long long result = 0;
result += (W(n/2) * (W(n/2)+1)) / 2;
for (int i=1; i <= ((n/2)-1); i++){
result +=(W(i)*W(n-i));
}
return result;
}
else if (n%2 != 0) //if odd
{
long long result = 0;
for (int i =1; i<= (((n+1)/2)-1); i++){
result += W(i)*W(n-i);
}
return result;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0319, 2024-11-02 12:54:25, PPPPPPPxxx (70%)
#include <bits/stdc++.h>
#define endl "\n"
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
else{
long long result=0;
for(int k=1;k<=n-2;k++){
result+=S(k)*S(n-k-1);
}
return 3*S(n-1)+result;
}
}
long long W(int n) {
long long result =0;
if(n==0) return 0;
if(n==1) return 1;
else if(n%2==0){
for(int i=1;i<=n/2-1;i++){
result+=(W(i)*W(n-i));
}
return (W(n/2)*W(n/2+1)/2)+result;
}
else if(n%2!=0){
for(int i=1;i<=(n+1)/2-1;i++){
result+=(W(i)*W(n-i));
}
return result;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0320, 2024-11-02 15:12:42, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
#define endl "\n"
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
else{
long long result=0;
for(int k=1;k<=n-2;k++){
result+=S(k)*S(n-k-1);
}
return 3*S(n-1)+result;
}
}
long long W(int n) {
long long result =0;
if(n==0) return 0;
if(n==1) return 1;
else if(n%2==0){
for(int i=1;i<=n/2-1;i++){
result+=(W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1)/2)+result;
}
else if(n%2!=0){
for(int i=1;i<=(n+1)/2-1;i++){
result+=(W(i)*W(n-i));
}
return result;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0321, 2024-11-02 12:52:44, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long result = 0 ; // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
else {
for(int i = 1 ; i <= n-2 ; ++i){
result += S(i)*S(n-i-1);
}
}
return 3*S(n-1) + result ;
}
long long W(int n) { // Wedderburn–Etherington Number
long long result_odd = 0;
long long result_even = 0;
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 1){
for(int i = 1 ; i <= (n+1)/2 -1 ; ++i){
result_odd += W(i)*W(n-i);
}
}
if(n % 2 == 0){
for(int i = 1 ; i <= n/2 -1 ; ++i){
result_even += W(i)*W(n-i);
}
}
if(n % 2 == 1) return result_odd;
if(n % 2 == 0) return (W(n/2)*W(n/2 +1))/2 + result_even;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0322, 2024-11-02 15:31:38, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long result = 0 ; // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
else {
for(int i = 1 ; i <= n-2 ; ++i){
result += S(i)*S(n-i-1);
}
}
return 3*S(n-1) + result ;
}
long long W(int n) { // Wedderburn–Etherington Number
long long result_odd = 0;
long long result_even = 0;
if(n == 0) return 0;
if(n == 1) return 1;
if(n == 2) return (W(n/2)*(W(n/2) +1))/2;
if(n % 2 == 0){
for(int i = 1 ; i <= (n/2)-1 ; ++i){
result_even += W(i)*W(n-i);
}
}
if(n % 2 == 1){
for(int i = 1 ; i <= ((n+1)/2)-1 ; ++i){
result_odd += W(i)*W(n-i);
}
}
if(n % 2 == 0) return (W(n/2)*(W(n/2) +1))/2 + result_even;
if(n % 2 == 1) return result_odd;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0323, 2024-11-02 09:25:34, PPPPPPPxxx (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
for(int k = 1 ; k <= n-2 ; k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) {
long long sum = 0;
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0&&n>=2){
for(int i = 1 ; i <= (n/2)-1 ; i++){
sum += W(i)*W(n-i);
}
return (W(n/2)*W(n/2+1))/2+sum;
}else if(n%2!=0&&n>=3){
for(int i = 1 ; i <= ((n+1)/2)-1 ; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0324, 2024-11-02 11:57:10, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
for(int k = 1 ; k <= n-2 ; k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) {
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long sum = 0;
for(int i = 1 ; i <= (n/2)-1 ; i++){
sum += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}else if(n%2!=0){
long long sum = 0;
for(int i = 1 ; i <= ((n+1)/2)-1 ; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0325, 2024-11-02 12:49:04, xxxPPPPPPx (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k <= n ){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if(k > n ){
return 0;
}
if(k==0)return 1 ;
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum = 0 ;
sum += 3 * S(n-1);
for(int i = 1 ; i <= n-2 ;++i){
sum += (S(i)*S(n-i-1)) ;
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==0){
long long sum = 0 ;
sum += (W(n/2)*(W(n/2)+1))/2;
for(int i = 1 ; i <(n/2) ; ++i){
sum += (W(i)*W(n-i));
}
return sum;
}else{
long long sum2 = 0 ;
for(int i = 1 ; i <((n+1)/2) ; ++i){
sum2 += (W(i)*W(n-i));
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0326, 2024-11-02 12:51:12, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n ){
return 0;
}
if(k==0)return 1 ;
if(k <= n ){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum = 0 ;
sum += 3 * S(n-1);
for(int i = 1 ; i <= n-2 ;++i){
sum += (S(i)*S(n-i-1)) ;
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==0){
long long sum = 0 ;
sum += (W(n/2)*(W(n/2)+1))/2;
for(int i = 1 ; i <(n/2) ; ++i){
sum += (W(i)*W(n-i));
}
return sum;
}else{
long long sum2 = 0 ;
for(int i = 1 ; i <((n+1)/2) ; ++i){
sum2 += (W(i)*W(n-i));
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0327, 2024-11-02 12:52:34, Compilation error (0%)
sumo=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sumo+=W(i)*W(n-i);
}
return sumo;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0328, 2024-11-02 12:52:47, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
if(k>=1)
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum=0;
if(n==0) return 1;
if(n==1) return 2;
for(int i=1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return (3*S(n-1))+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum+=W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;
}else{
long long sumo=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sumo+=W(i)*W(n-i);
}
return sumo;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0329, 2024-11-02 12:51:46, P--PPPPPP- (70%)
#include<iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0)return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1) +T(n-1,k)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+= S(k)* S(n-k-1);
}
return(3*S(n-1)) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0 | n==1) return n;
long long sum=0;
if(n%2==1){
for(int i=1;i<=(n+1)/2 -1 ; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
else{
for(int i=1;i<=n/2-1 ;i++) sum+=W(i)*W(n-i);
return (W(n/2) * ( W(n/2) +1))/2 + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0330, 2024-11-02 12:53:10, PPPPPPPPPP (100%)
#include<iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0)return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1) +T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+= S(k)* S(n-k-1);
}
return(3*S(n-1)) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0 | n==1) return n;
long long sum=0;
if(n%2==1){
for(int i=1;i<=(n+1)/2 -1 ; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
else{
for(int i=1;i<=n/2-1 ;i++) sum+=W(i)*W(n-i);
return (W(n/2) * ( W(n/2) +1))/2 + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0331, 2024-11-02 13:28:08, PPPPPPPx-x (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0 && n >= 0) return 1;
if(k > n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum = 0;
for(int i = 1; i <= n-2; i++) {
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
long long sum = 0;
long long A = 0;
if(n % 2 == 0) {
for(int i = 1; i <= int(n/2)-1; i++) {
sum += W(i)*W(n-i);
}
A = (W(n/2) * W((n/2)+1))/2;
A += sum;
}
// else{
// for(int i = 1; i <= int((n+1)/2)-1; i++) {
// sum += W(i)*W(n-i);
// }
// A = sum;
// }
return A;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0332, 2024-11-02 14:19:50, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0 && n >= 0) return 1;
if(k > n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum = 0;
for(int i = 1; i <= n-2; i++) {
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(long long n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
long long A = 0;
if(n % 2 == 1){
long long sum = 0;
for(int i = 1; i <= int((n+1)/2)-1; i++) {
sum += W(i)*W(n-i);
}
A = sum;
return A;
}
if(n % 2 == 0) {
long long sum = 0;
for(long long i = 1; i <= n/2-1; i++) {
sum += W(i)*W(n-i);
}
A = W(n/2);
A *= W(n/2)+1;
A /= 2;
return A + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0333, 2024-11-02 10:06:46, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long b=0;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long a=0;
for(int i{1} ; i<=n-2 ; i++){
a += S(i)*S(n-i-1);
}
return 3*S(n-1) + a;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0){
for(int i{1} ; i<=(n/2)-1 ; i++){
b += W(i)*W(n-i);
}
return ((W(n/2)*((W(n/2))+1))/2) +b;
}else{
for(int i{1} ; i<=((n+1)/2)-1 ; i++){
b += W(i)*W(n-i);
}
return b;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0334, 2024-11-02 10:08:40, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long a=0;
for(int i{1} ; i<=n-2 ; i++){
a += S(i)*S(n-i-1);
}
return 3*S(n-1) + a;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long b=0;
if(n>=2 && n%2 == 0){
for(int i{1} ; i<=(n/2)-1 ; i++){
b += W(i)*W(n-i);
}
return ((W(n/2)*((W(n/2))+1))/2) +b;
}
if(n>=3 && n%2 == 1){
for(int i{1} ; i<=((n+1)/2)-1 ; i++){
b += W(i)*W(n-i);
}
return b;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0335, 2024-11-02 11:28:52, PPP-PPPPPP (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if( k > n) {
return 0 ;
}
if( k == 0 ){
return 1 ;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if( n == 0 ){
return 0 ;
}
if( n == 1 ){
return 2 ;
}
int total = 0 ;
for( int i = 1 ; i <= n-2 ;i++ ){
total += S(i)*S(n-i-1) ;
}
return 3*S(n-1) + total ;
}
long long W(int n) { // Wedderburn–Etherington Number
if( n == 0 ){
return 0 ;
}
if( n == 1 )
{
return 1 ;
}
if( n % 2 == 0 ){
int total = 0;
for( int i = 1 ; i <= n/2-1 ; i++ ){
total += W(i) * W(n-i) ;
}
return W(n/2)*(W(n/2) +1 )/2 + total ;
}else{
int total = 0 ;
for( int i = 1 ; i <= (n+1)/2 - 1 ; i++){
total += W(i)*W(n-i);
}
return total ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0336, 2024-11-02 11:30:20, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if( k > n) {
return 0 ;
}
if( k == 0 ){
return 1 ;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if( n == 0 ){
return 1 ;
}
if( n == 1 ){
return 2 ;
}
int total = 0 ;
for( int i = 1 ; i <= n-2 ;i++ ){
total += S(i)*S(n-i-1) ;
}
return 3*S(n-1) + total ;
}
long long W(int n) { // Wedderburn–Etherington Number
if( n == 0 ){
return 0 ;
}
if( n == 1 )
{
return 1 ;
}
if( n % 2 == 0 ){
int total = 0;
for( int i = 1 ; i <= n/2-1 ; i++ ){
total += W(i) * W(n-i) ;
}
return W(n/2)*(W(n/2) +1 )/2 + total ;
}else{
int total = 0 ;
for( int i = 1 ; i <= (n+1)/2 - 1 ; i++){
total += W(i)*W(n-i);
}
return total ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0337, 2024-11-02 12:48:40, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
else if(k>n) return 0;
return (T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
long long sum =3*S(n-1);
for(int k=1;k<n-1;k++)
{
sum += S(k)*S(n-k-1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2 ==0)
{
}
else if(n%2 != 0)
{
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0338, 2024-11-02 12:53:43, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
else if(k>n) return 0;
return (T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
long long sum =3*S(n-1);
for(int k=1;k<n-1;k++)
{
sum += S(k)*S(n-k-1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long w;
if(n%2 ==0)
{
w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<n/2;i++)
{
w+= W(i)*W(n-i);
}
}
else if(n%2 != 0)
{
w=0;
for(int i=1;i<(n+1)/2;i++)
{
w += W(i)*W(n-i);
}
}
return w;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0339, 2024-11-02 12:47:15, PPPPPP-PPP (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long result = 0;
if (n == 0) return 1;
if (n == 1) return 2;
for (int k = 1; k <= n-2; k++) {
result += (S(k)*S(n-k-1));
}
return 3*S(n-1) + result;
}
long long W(int n) { // Wedderburn–Etherington Number
long long r1 = 0, r2 = 0;
if (n == 0) return 1;
if (n == 1) return 1;
if (n % 2 == 0) {
int m = n/2;
for (int i = 1; i <= m-1; i++) {
r1 += (W(i)*W(n-i));
}
return (W(m)*(W(m)+1)/2) + r1;
}
int p = ((n+1) / 2) -1;
for (int i = 1; i <= p; i++) {
r2 += (W(i)*W(n-i));
}
return r2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0340, 2024-11-02 12:48:14, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long result = 0;
if (n == 0) return 1;
if (n == 1) return 2;
for (int k = 1; k <= n-2; k++) {
result += (S(k)*S(n-k-1));
}
return 3*S(n-1) + result;
}
long long W(int n) { // Wedderburn–Etherington Number
long long r1 = 0, r2 = 0;
if (n == 0) return 0;
if (n == 1) return 1;
if (n % 2 == 0) {
int m = n/2;
for (int i = 1; i <= m-1; i++) {
r1 += (W(i)*W(n-i));
}
return (W(m)*(W(m)+1)/2) + r1;
}
int p = ((n+1) / 2) -1;
for (int i = 1; i <= p; i++) {
r2 += (W(i)*W(n-i));
}
return r2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0341, 2024-11-02 12:45:07, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n)return 0;
else if(k==0)return 1;
else{
return T(n,k-1)+T((n-1),(k-1))+T((n-1),k);
}
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
else{
long long re=3*S(n-1);
for (int i = 1; i < n-1; i++)
{
re+=S(i)*S(n-i-1);
}
return re;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
else if(n==1)return 1;
else if(n%2==0)
{
long long re=(W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<=(n/2)-1;i++)
{
re+=W(i)*W(n-i);
}
}
else{
long long re=0;
for(int i=1;i<=((n+1)/2)-1;i++)
{
re+=W(i)*W(n-i);
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0342, 2024-11-02 12:47:40, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n)return 0;
else if(k==0)return 1;
else{
return T(n,k-1)+T((n-1),(k-1))+T((n-1),k);
}
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
else{
long long re=3*S(n-1);
for (int i = 1; i < n-1; i++)
{
re+=S(i)*S(n-i-1);
}
return re;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
else if(n==1)return 1;
else if(n%2==0)
{
long long re=(W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<=(n/2)-1;i++)
{
re+=W(i)*W(n-i);
}
return re;
}
else if(n%2!=0){
long long re=0;
for(int i=1;i<=((n+1)/2)-1;i++)
{
re+=W(i)*W(n-i);
}
return re;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0343, 2024-11-02 09:31:09, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n)
{
return 0;
}
else if(k==0)
{
return 1;
}
else
{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
long long a=0;
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
else
{
for(int k=1;k<=n-2;k++)
{
a+=S(k)*S(n-k-1);
}
return 3*S(n-1)+a;
}
}
long long W(int n) { // Wedderburn–Etherington Number
long long a=0;
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2==0)
{
for(int i=1;i<=(n/2)-1;i++)
{
a+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + a;
}
else if(n%2==1)
{
for(int i=1;i<=(n+1/2)-1;i++)
{
a+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0344, 2024-11-02 09:33:00, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n)
{
return 0;
}
else if(k==0)
{
return 1;
}
else
{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
long long a=0;
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
else
{
for(int k=1;k<=n-2;k++)
{
a+=S(k)*S(n-k-1);
}
return 3*S(n-1)+a;
}
}
long long W(int n) { // Wedderburn–Etherington Number
long long a=0;
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2==0)
{
for(int i=1;i<=(n/2)-1;i++)
{
a+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + a;
}
else if(n%2==1)
{
for(int i=1;i<=((n+1)/2)-1;i++)
{
a+=W(i)*W(n-i);
}
return a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0345, 2024-11-02 15:13:34, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
return T(n, k-1) + T(n-1,k-1) + T(n-1, k);
}
long long S(int n)
{ // Schroder Number
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long sum = 0;
for(int k=1; k<=n-2; ++k){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long res = (W(n/2)*(W(n/2)+1))/2;
long long sum = 0;
for(int i=1; i<=((n/2)-1); ++i){
sum += W(i) * W(n-i);
}
return res + sum;
}
if(n%2!=0){
long long sum = 0;
for(int i=1; i<=(((n+1)/2)-1); ++i){
sum += W(i)*W(n-1);
}
return sum;
}
// return 0;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0346, 2024-11-02 15:16:49, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
return T(n, k-1) + T(n-1,k-1) + T(n-1, k);
}
long long S(int n)
{ // Schroder Number
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long sum = 0;
for(int k=1; k<=n-2; ++k){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long sum = 0;
for(int i=1; i<=(n/2)-1; ++i){
sum += W(i) * W(n-i);
}
return (W(n/2) * (W(n/2)+1))/2 + sum;
}
if(n%2!=0){
long long sum = 0;
for(int i=1; i<=(((n+1)/2)-1); ++i){
sum += W(i)*W(n-i);
}
return sum;
}
// return 0;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0347, 2024-11-02 09:24:17, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int sum=0;
for(int k=1; k<=n-2; k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
int sum1=0;
for(int i=1; i<=(n*0.5)-1; i++){
sum1 += W(i)*W(n-1);
}
if(n>1 && n%2==0) return (W(n*0.5)*(W(n*0.5)+1))*0.5 + sum1;
int sum2=0;
for(int i=1; i<=(n+1)/2.0 - 1; i++){
sum2 += W(i)*W(n-i);
}
if(n>1 && n%2==1) return sum2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0348, 2024-11-02 10:45:30, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int sum=0;
for(int k=1; k<=n-2; k++){
sum += (S(k)*S(n-k-1));
}
if(n>=2) return (3*S(n-1)) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
int sum1=0;
for(int i=1; i<=(n*0.5)-1; i++){
sum1 += (W(i)*W(n-i));
}
if(n>1 && n%2==0) return (W(n*0.5)*(W(n*0.5)+1))*0.5 + sum1;
int sum2=0;
for(int i=1; i<=(n+1)/2.0 - 1; i++){
sum2 += (W(i)*W(n-i));
}
if(n>1 && n%2==1) return sum2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0349, 2024-11-02 14:28:35, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0)
{
return 1;
}
else if(k>n)
{
return 0;
}
else
{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n)
{ // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
else if(n>=2)
{
int sum=0;
for(int k=1;k<=n-2;k++)
{
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2==0)
{
int sum=0;
for(int i=1;i<=n/2-1;i++)
{
sum+=W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;
}
else
{
int sum=0;
for(int i=1;i<=(n+1)/2+1;i++)
{
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0350, 2024-11-02 14:30:36, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0)
{
return 1;
}
else if(k>n)
{
return 0;
}
else
{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n)
{ // Schroder Number
if(n==0)
{
return 1;
}
else if(n==1)
{
return 2;
}
else if(n>=2)
{
int sum=0;
for(int k=1;k<=n-2;k++)
{
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else if(n%2==0)
{
int sum=0;
for(int i=1;i<=n/2-1;i++)
{
sum+=W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;
}
else
{
int sum=0;
for(int i=1;i<=(n+1)/2-1;i++)
{
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0351, 2024-11-02 14:10:47, Compilation error (0%)
#include <iostream>
using namespace std;
long long sumS(int n) {
long long output = 0;
for (int i = 1; i <= n; i++) {
output += S(i)*S(n-i-1);
}
return output;
}
long long sumW(int n) {
long long output = 0;
for (int i = 1; i <= n; i++) {
output += W(i)*W(n-i);
}
return output;
}
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {return 1;}
else if (k > n) {return 0;}
else {return T(n,k-1) + T(n-1,k-1) + T(n-1,k);}
}
long long S(int n) { // Schroder Number
if (n == 0) {return 1;}
else if (n == 1) {return 2;}
else {return (3 * S(n-1)) + sumS(n-2);}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) {return 0;}
else if (n==1) {return 1;}
else if (n%2==0) {return ((W(n/2)*(W(n/2)+1))/2) + sumW((n/2)-1);}
else if (n%2==1) {return sumW(((n+1)/2)-1);}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0352, 2024-11-02 14:24:45, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
/*
long long sumS(int n) {
long long output = 0;
for (int i = 1; i <= n; i++) {
output += S(i)*S(n-i-1);
}
return output;
}
long long sumW(int n) {
long long output = 0;
for (int i = 1; i <= n; i++) {
output += W(i)*W(n-i);
}
return output;
} */
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {return 1;}
else if (k > n) {return 0;}
else {return T(n,k-1) + T(n-1,k-1) + T(n-1,k);}
}
long long S(int n) { // Schroder Number
if (n == 0) {return 1;}
else if (n == 1) {return 2;}
else {
long long output = 0;
for (int i = 1; i <= n-2; i++) {
output += S(i)*S(n-i-1);
}
return (3 * S(n-1)) + output;}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) {return 0;}
else if (n==1) {return 1;}
else if (n%2==0) {
long long output = 0;
for (int i = 1; i <= (n/2)-1; i++) {
output += W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + output;}
else if (n%2==1) {
long long output = 0;
for (int i = 1; i <= ((n+1)/2)-1; i++) {
output += W(i)*W(n-i);
}
return output;}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0353, 2024-11-02 09:22:56, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0)return 1;
else if(k>n)return 0;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
else{
long long H=0;
for(int k=1;k<=n-2;k++) H+= S(k)*S(n-k-1);
return 3*S(n-1)+H;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else{
if(n%2 ==0) {
long long H=0;
for(int k=1;k<=(n/2)-1;k++) H+= W(k)*W(n-k);
return (((W(n/2))*(W(n/2)+1))/2)+H;
}
else {
long long H=0;
for(int k=1;k<=(n/2)-1;k++) H+= W(k)*W(n-k);
return H;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0354, 2024-11-02 09:25:59, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0)return 1;
else if(k>n)return 0;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
else{
long long H=0;
for(int k=1;k<=n-2;k++) H+= S(k)*S(n-k-1);
return 3*S(n-1)+H;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if(n==1) return 1;
else{
if(n%2 ==0) {
long long H=0;
for(int k=1;k<=(n/2)-1;k++) H+= W(k)*W(n-k);
return (((W(n/2))*(W(n/2)+1))/2)+H;
}
else {
long long H=0;
for(int k=1;k<=((n+1)/2)-1;k++) H+= W(k)*W(n-k);
return H;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0355, 2024-11-02 09:06:49, Compilation error (0%) # | # 0356, 2024-11-02 09:28:20, PPPPPPPPPP (100%)
#include <iostream>
#include <cmath>
#include <string>
#include <algorithm>
#include <map>
#include <vector>
#include <set>
#include <tuple>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
else if(k == 0) return 1;
return T(n, k - 1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
else if(n == 1) return 2;
int ans = 0;
ans += 3*S(n-1);
for(int k =1; k <= n-2; k++){
ans += (S(k)*S(n-k-1));
}
return ans;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n == 1) return n;
int ans = 0;
if(n%2 == 0){
ans += (W(n/2) * (W(n/2) + 1))/2;
for(int i = 1; i <= (n/2) - 1; i++){
ans += W(i)*W(n-i);
}
return ans;
}
for(int i = 1; i <= ((n+1)/2) - 1; i++){
ans += W(i)*W(n-i);
}
return ans;
}
/*
T 10 11
T 100 0
T 12 10
S 0
S 1
S 20
W 0
W 1
W 20
*/
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0357, 2024-11-02 13:37:12, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum = 0;
for(int i = 1; i <= n-2; i++){
sum += S(i)+S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long sigma(int n);
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
long long sum = 0;
if( n % 2 == 0){
long long max = 0;
for(int i = 1; i <= (n/2)-1; i++){
max += W(i)*W(n-i);
}
sum = (W(n/2)*(W(n/2)+1))/2;
return sum + max;
}
long long odd = 0;
for(int i = 1; i <= ((n+1)/2)-1; i++){
odd += W(i)*W(n-i);
}
return odd;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0358, 2024-11-02 14:01:35, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum = 0;
for(int i = 1; i <= n-2; i++){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long sigma(int n);
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
long long sum = 0;
if( n % 2 == 0){
long long max = 0;
for(int i = 1; i <= (n/2)-1; i++){
max += W(i)*W(n-i);
}
sum = (W(n/2)*(W(n/2)+1))/2;
return sum + max;
}
long long odd = 0;
for(int i = 1; i <= ((n+1)/2)-1; i++){
odd += W(i)*W(n-i);
}
return odd;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0359, 2024-11-02 10:26:46, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > k && k<= n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n) {
return 0;
}
else if (k == 0) {
return 1;
}
}
long long S(int n) { // Schroder Number
if (n == 0) {
return 1;
}
if (n==1) {
return 2;
}
int sum = 0;
for (int k = 1; k <= n-2;k++) {
sum+= S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0;
}
if (n ==1 ) {
return 1;
}
if (n%2 == 0) {
int sum = 0;
for (int i = 1; i<= n/2 - 1; i++) {
sum+= W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2) +1))/ 2 ) + sum;
}
if (n%2 == 1) {
int sum = 0;
for (int i = 1; i<= (n+1)/2 - 1; i++) {
sum+= W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0360, 2024-11-02 10:33:04, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1;
}
if (k > n) {
return 0;
}
if (k > 1 && k<= n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if (n == 0) {
return 1;
}
if (n==1) {
return 2;
}
int sum = 0;
for (int k = 1; k <= n-2;k++) {
sum+= S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0;
}
if (n ==1 ) {
return 1;
}
if (n%2 == 0) {
int sum = 0;
for (int i = 1; i<= n/2 - 1; i++) {
sum+= W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2) +1))/ 2 ) + sum;
}
if (n%2 == 1) {
int sum = 0;
for (int i = 1; i<= (n+1)/2 - 1; i++) {
sum+= W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0361, 2024-11-02 12:50:20, PPPPPP-PPP (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n)return 0;
if(k==0)return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n<=1)return n+1;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n<=1)return 1;
if(n%2==0){
long long sum=0;
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
//else
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0362, 2024-11-02 12:51:33, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n)return 0;
if(k==0)return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n<=1)return n+1;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n<=1)return n;
if(n%2==0){
long long sum=0;
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
//else
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0363, 2024-11-02 09:23:11, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long result = 3*S(n-1);
for(int k = 1;k <= n-2;k++) result += S(k)*S(n-k-1);
return result;
}
map<int,long long> c;
long long W(int n) { // Wedderburn–Etherington Number
if (c.find(n) != c.end()) return c[n];
if (n < 2) return n;
long long result = 0;
if (n% 2 == 0) {
result += (W(n/2)*(W(n/2)+1))/2 ;
for (int i = 1;i <= n-2;i++) result += W(i)*W(n-i);
}else {
for (int i = 1;i <= (n+1)/2-1;i++) result += W(i)*W(n-i);
}
c[n] = result;
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0364, 2024-11-02 09:25:00, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long result = 3*S(n-1);
for(int k = 1;k <= n-2;k++) result += S(k)*S(n-k-1);
return result;
}
map<int,long long> c;
long long W(int n) { // Wedderburn–Etherington Number
if (c.find(n) != c.end()) return c[n];
if (n < 2) return n;
long long result = 0;
if (n% 2 == 0) {
result += (W(n/2) * (W(n/2)+1)) /2 ;
for (int i = 1;i <= n/2-1;i++) result += W(i)*W(n-i);
}else {
for (int i = 1;i <= (n+1)/2-1;i++) result += W(i)*W(n-i);
}
c[n] = result;
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0365, 2024-11-02 09:21:19, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
if(k==0){
return 1;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long sum =0;
for(int k=1;k<n-1;k++){
sum+=S(k)*S(n-k-1);
}
return 3+S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long sum=0;
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}else{
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0366, 2024-11-02 09:22:55, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
if(k==0){
return 1;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}
if(n==1){
return 2;
}
long long sum =0;
for(int k=1;k<n-1;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
long long sum=0;
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}else{
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0367, 2024-11-02 09:21:45, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
return T(n, k-1) + T(n-1, k-1) + T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
long long tmp = 3*S(n-1);
for(int k=1; k<=n-2; k++){
tmp += S(k) * S(n-k-1);
}
return tmp;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n == 0 || n== 1){
return n;
}
if(n%2==0){
long long tmp = (W(n/2) * (W(n/2) + 1))/2;
for(int i=1; i<=n/2-1; i++){
tmp += W(i) * W(n-i);
}
return tmp;
}
if(n%2==1){
long long tmp=0;
for(int i=1; i<= ((n+1)/2)-1; i++){
tmp += W(i)*W(n-i);
}
return tmp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0368, 2024-11-02 09:34:51, PPPPPPPPPP (100%)
#include<bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) {
return 1;
}
if(k>n) {
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) {
return 1;
}
if(n==1) {
return 2;
}
if(n>=2) {
long long sum = 0;
for(int k=1 ; k<=n-2 ; ++k) {
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) {
return 0;
}
if(n==1) {
return 1;
}
if(n!=1 && n%2==1) {
long long sum = 0;
for(int i=1 ; i<=((n+1)/2)-1 ; ++i) {
sum += W(i)*W(n-i);
}
return sum;
}
if(n%2==0) {
long long sum = 0;
for(int i=1 ; i<=(n/2)-1 ; ++i) {
sum += W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0369, 2024-11-02 13:00:03, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
double sum = 0;
if(n >= 2){
for(int k=1; k<=n-2; k++){
sum += S(k) * S(n-k-1);
}
return (3.0*S(n-1)) + sum;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n >= 2 && n % 2 == 0){
double sum=0;
for(int i=1; i<=((n/2.0)-1.0); i++){
sum += W(i)*W(n-i);
}
return (W(n/2.0) * (W(n/2.0)+1.0))/2.0 + sum;
} else if(n >= 3 && n % 2 != 0){
double sum =0;
for(int i=1; i<=((n+1)/2.0)-1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0370, 2024-11-02 09:25:11, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n){
return 0;
}else if(k == 0){
return 1;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}else if(n == 1){
return 2;
}
long long sum = 0;
for(int k = 1; k <= n-2; k++){
sum += S(k) * S(n-k-1);
}
return 3 * S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}else if(n == 1){
return 1;
}else if(n % 2 == 0){
long long sum = 0;
for(int i = 1; i <= (n/2 - 1); i++){
sum += W(i) * W(n - i);
}
return (W(n/2) * (W(n/2) + 1))/2 + sum;
}
long long sum2 = 0;
for(int i = 1; i <= (n+1)/2 - 1; i++){
sum2 += W(i) * W(n-i);
}
return sum2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0371, 2024-11-02 12:47:15, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
if(k>1)return T(n,k-1) + T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum=0;
for(int k=1;k<=n-2;++k){
sum += (S(k)*S(n-k-1));
}
return 3*S(n-1) +sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==0){
long long asum=0;
for(int i=1;i<=(n/2.0)-1;++i){
asum += (W(i)*W(n-i));
}
return (W(n/2.0)*(W(n/2.0)+1))/2.0 + asum;
}
if(n%2!=0){
long long osum=0;
for(int i=1;i<=((n+1)/2.0)-1;++i){
osum += (W(i)*W(n-i));
}
return osum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0372, 2024-11-02 12:48:58, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0)return 1;
return T(n,k-1)+T(n-1,k-1)+ T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long temp=0;
for (int k = 1; k <= n-2; k++)
{
temp+=(S(k)*S(n-k-1));
}
return 3*S(n-1)+temp;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==1){
long long temp =0;
for(int i=1;i<=(n+1)/2 - 1;i++){
temp+= W(i)*W(n-i);
}
return temp;
}
else{
long long temp =0;
for(int i=1;i<=n/2 -1;i++){
temp+= W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2 + temp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0373, 2024-11-02 12:45:15, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n) return 0;
else if(k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
else if(n==1) return 2;
long long x=0;
for(int i=1;i<=n-2;i++){
x+=S(i)*S(n-i-1);
}
return 3*S(n-1)+x;
}
long long W(int n) {
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0){
long long x=0;
for(int i=1;i<=(n/2)-1;i++){
x+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2+x;
}
else{
long long x=0;
for(int i=1;i<=((n+1)/2)-1;i++){
x+=W(i)*W(n-i);
}
return x;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
//BossPaul
} |
# 0374, 2024-11-02 12:55:40, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1;
}
if (k > n) {
return 0;
}
if (1 < k && k <= n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if (n == 0) {
return 1;
}
if (n == 1) {
return 2;
}
int result = 3*S(n-1);
for (int k=1; k <= n-2; ++k) {
result += S(k) * S(n-k-1);
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0 || n == 1){
return n;
}
int sum = (W(n/2)*(W(n/2)+1))/2;
for (int i=1; i<= (n/2)-1; i++){
sum += W(i)*W(n-i);
}
if (n%2 == 0) return sum;
int total = 0;
for (int i=1; i<= ((n+1)/2)-1; i++){
total += W(i)*W(n-i);
}
if (n%2 == 1) return total;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0375, 2024-11-02 11:06:00, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n){
return 0;
} else if (k == 0){
return 1;
} else {
return T(n, k-1) + T(n-1,k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
if (n == 0){
return 1;
} else if (n == 1){
return 2;
} else {
int sum = 0;
for (int i = 1; i < (n-2)+1; i++)
{
sum += (S(i)) * (S(n-i-1));
}
return (3 * S(n-1)) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
} else if (n == 1){
return 1;
} else if (n % 2 == 0){
int sum1 = 0;
for (int i = 1; i < n/2-1+1; i++)
{
sum1 += W(i) * W(n-i);
}
return (W(n/2) * (W(n/2) + 1)) / 2 + sum1;
} else {
int sum2 = 0;
for (int i = 1; i < (n+1)/2 - 1+1; i++)
{
sum2 += W(i) * W(n-i);
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0376, 2024-11-02 12:48:49, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else{
return T(n, k-1)+T(n-1, k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
long long total=0;
if(n==0) return 1;
else if(n==1) return 2;
else{
for(int k=1; k<=n-2; k++){
total+=S(k)*S(n-k-1);
}
return 3*S(n-1)+total;
}
}
long long W(int n) { // Wedderburn–Etherington Number
long long total1=0, total2=0;
if(n<=1){
return n;
}
else if(n%2==0){
for(int i=1; i<=(n/2)-1; i++){
total1+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 +total1;
}
else if(n%2!=0){
for(int i=1; i<=((n+1)/2)-1; i++){
total2+=W(i)*W(n-i);
}
return total2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0377, 2024-11-02 09:22:16, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
else if(k == 0) return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
else if(n == 1) return 2;
long long sum = 0;
for(int k = 1; k <= n-2; ++k) {
sum += (S(k)*S(n-k-1));
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n == 1) return n;
if(n%2 == 0) {
long long sum1 = 0;
for(int i = 1; i <= (n/2)-1; ++i) {
sum1 += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum1;
} else {
long long sum2 = 0;
for(int i = 1; i <= ((n+1)/2)-1; ++i) {
sum2 += W(i)*W(n-i);
}
return sum2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0378, 2024-11-02 13:31:38, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number s20 17518619320890
if(n==0) return 1;
if(n==1) return 2;
long long int sum=0; int nn=n-2;
for(int k=1;k<=nn;k++){
sum+=(S(k)*S(n-k-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
//even
long long int sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum+=W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;
}
else {
//odd
long long int sum=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0379, 2024-11-02 12:44:55, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)
return 1;
if (k > n)
return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
long long sum = 3 * S(n - 1);
for (int k=1; k <= n-2; ++k) {
sum += S(k) * S(n - k - 1);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 0) {
long long result = (W(n / 2) * (W(n / 2) + 1)) / 2;
for (int i=1; i <= n/2-1; ++i) {
result += W(i) * W(n - i);
}
return result;
}
long long result = 0;
for (int i=1; i <= (n+1)/2-1; ++i) {
result += W(i) * W(n - i);
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0380, 2024-11-02 09:30:02, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return(T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k-1);
}
return (3*S(n-1)+sum);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0){
long long sum=0;
for(int i=1;i<=((n)/2)-1;i++){
sum+=W(i)*W(n-i);
}return ((W(n/2)*(W(n/2)+1)/2)+sum);
}
if(n%2==1) {
long long sum=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-i);
}return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0381, 2024-11-02 09:27:30, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
// Base Case
if (k == 0) return 1 ;
else if (k > n) return 0 ;
else {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
}
long long S(int n) { // Schroder Number
// Base Case
if (n == 0) return 1 ;
else if (n == 1) return 2 ;
else {
long long acc = 0 ;
for (long long k = 1 ; k <= n-2 ; k++) {
acc += (S(k) *S(n-k-1)) ;
}
return (3*S(n-1) +acc) ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
// Base Case
if (n == 0) return 0 ;
else if (n == 1) return 1 ;
else {
// even
if (n%2 == 0) {
long long acc = 0 ;
long long m = (n/2)-1 ;
for (long long i = 1 ; i <= m ; i++) {
acc += (W(i)*W(n-i)) ;
}
return (W(n/2)*(W(n/2) +1))/2 + acc ;
}
else {
// odd
long long acc = 0 ;
long long m = ((n+1)/2)-1 ;
for (long long i = 1 ; i <= m ; i++) {
acc += (W(i)*W(n-i)) ;
}
return acc ;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0382, 2024-11-02 12:47:17, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum=0;
if(n==0) return 1;
else if(n==1) return 2;
sum = 3*S(n-1);
for (int k = 1; k <= n-2; k++)
{
sum += (S(k)*S(n-k-1));
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumeven=0,sumodd=0;
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2 == 0)
{
sumeven = (W(n/2)*(W(n/2)+1))/2;
for (int i = 1; i <= (n/2)-1; i++)
{
sumeven += (W(i)*W(n-i));
}
return sumeven;
}
else if(n%2 != 0)
{
for (int i = 1; i <= ((n+1)/2)-1; i++)
{
sumodd += W(i)*W(n-i);
}
return sumodd;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0383, 2024-11-02 09:19:23, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n < 2) return n + 1;
long long sum = 0;
for (int k = 1; k <= n - 2; k++) {
sum += S(k) * S(n - k - 1);
}
return 3 * S(n - 1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n < 2) return n;
if (n & 1) {
long long sum = 0;
for (int i = 1; i <= (n + 1) / 2 - 1; i++)
sum += W(i) * W(n - i);
return sum;
}
long long sum = 0;
for (int i = 1; i <= n / 2 - 1; i++)
sum += W(i) * W(n - i);
return (W(n / 2) * (W(n / 2) + 1) / 2) + sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0384, 2024-11-02 09:25:41, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k >n) return 0;
if(1 < k && k <= n && 1 <n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number == complete
if(n ==0)return 1;
if(n == 1) return 2;
if(n>=2){
long long sum = 0;
for(long long k =1;k <= n-2;++k){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n ==0 || n == 1) return n;
if(n %2 ==0){
long long sum = 0;
for(int i =1;i <= ((n/2)-1);++i) sum += W(i)*W(n-i);
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
if(n %2 != 0){
long long sum =0;
for(int i =1;i <= ((n+1)/2)-1;++i) sum += W(i)*W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0385, 2024-11-02 09:25:56, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)return 1;
else if(k > n)return 0;
else return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)return 1;
else if(n == 1)return 2;
else if(n >= 2) {
int sum = 0;
for(int i=1;i<=(n-2);i++){
sum += (S(i) * S(n-i-1));
}
return sum + (3*S(n-1));
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
else if(n == 1)return 1;
else if(n%2 == 1){
int sum =0;
for(int i=1;i<=((n+1)/2) - 1;i++){
sum += W(i) * W(n-i);
}
return sum;
}else{
int sum = 0;
for(int i=1;i<=(n/2)-1;i++){
sum+= W(i) * W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0386, 2024-11-02 13:00:09, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(long long k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return (3*S(n-1))+sum;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
long long sum=0, sumb=0;
if(n%2==0){
for(long long i=1; i<=(n/2-1); i++){
sum+=W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + sum;
}
for(long long i=1; i<=((n+1)/2-1); i++){
sumb+=W(i)*W(n-i);
}
return sumb;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0387, 2024-11-02 13:30:07, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;//
return T(n,k-1)+T(n-1,k)+T(n-1,k-1);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int i=1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum=0;
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+sum;
}
else{
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0388, 2024-11-02 12:53:29, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0){
return 1;
}
if (k>n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if (n==1) return 2;
else{
long long sum=0;
for (long long k = 1; k<= n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if (n%2==0){
long long first = (W(n/2)*((W(n/2)+1)))/2;
long long second =0;
for (long long i = 1; i <= ((n/2)-1); i++){
second += W(i)*W(n-i);
}
return first+second;
}
else{
long long third =0;
for (long long i = 1; i <= (((n+1)/2)-1); i++){
third += W(i)*W(n-i);
}
return third;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0389, 2024-11-02 09:42:21, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0 ;
if(k == 0) return 1 ;
if(1 <= k && k <= n) return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k) ;
}
long long S(int n) { // Schroder Number
if(n == 0) return 1 ;
if(n == 1) return 2 ;
long long sum = 0 ;
for(long long k = 1 ; k <= n - 2 ; k++) {
sum += S(k) * S(n - k - 1) ;
}
if(n >= 2) return 3 * S(n - 1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0 ;
if(n == 1) return 1 ;
long long sum = 0 ;
for(long long i = 1 ; i <= (n / 2) - 1 ; i++) {
sum += W(i) * W(n - i) ;
}
if(n > 1 && n % 2 == 0) return ((W(n / 2) * (W(n / 2) + 1)) / 2) + sum ;
long long sum2 = 0 ;
for(long long i = 1 ; i <= ((n + 1) / 2) - 1 ; i++) {
sum2 += W(i) * W(n - i) ;
}
if(n > 1 && n % 2 == 1) return sum2 ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0390, 2024-11-02 09:24:40, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(k > 1 && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long x = 0;
for(int i = 1; i <= (n-2); i++){
x += S(i)*S(n-i-1);
}
return (3*S(n-1) + x);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 0){
long long x = 0;
for(int i = 1; i<=((n/2)-1); i++){
x += W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2)+x;
}else{
long long y = 0;
for(int i = 1; i<=((n+1)/2)-1; i++){
y += W(i)*W(n-i);
}
return y;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0391, 2024-11-02 09:33:00, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){ return 1; }
if(k > n){ return 0; }
return T(n, k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0 || n == 1){ return n+1; }
long long sum = 0;
for(int k=1; k<=n-2; k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n == 1){ return n; }
if(n&1){
long long sum = 0;
int upper = (n+1)/2 - 1;
for(int i=1; i<=upper; i++){
sum += W(i)*W(n-i);
}
return sum;
}
long long sum = 0;
int upper = n/2-1;
for(int i=1; i<=upper; i++){
sum += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0392, 2024-11-02 10:16:45, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n)
{
return 0;
}
if(k == 0)
{
return 1;
}
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if(n == 0)return 1;
if(n == 1)return 2;
long long t = 0;
for(int i = 1; i <= n - 2; i++)
{
t += S(i)*S(n-i-1);
}
return 3*(S(n - 1)) + t;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 0)
{
long long t = 0;
for(int i = 1; i <= (n/2) - 1; i++)
{
t += W(i) *W (n - i);
}
return ((W(n/2) * (W((n/2)) + 1))/2) + t;
}
else
{
long long t = 0;
for(int i = 1; i <= ((n + 1)/2) - 1; i++)
{
t += W(i) *W (n - i);
}
return t;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0393, 2024-11-02 15:10:30, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) {
return 0;
}
if (k == 0) {
return 1;
}
if (1 < k <= n) {
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
}
long long S(int n) { // Schroder Number
if (n == 0) {
return 1;
}
if (n == 1) {
return 2;
}
if (n >= 2) {
int sumS = 0;
for (int k = 1; k <= n - 2; k++) {
sumS += (S(k) * S(n-k-1));
}
return 3*(S(n-1)) + sumS;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0;
}
if (n == 1) {
return 1;
}
if (n % 2 == 0) {
int sum_W_mod0 = 0;
for (int i = 1; i <= ((n/2)-1); i++) {
sum_W_mod0 += (W(i)*W(n-i));
}
return (( (W(n/2)) * ((W(n/2))+1) ) / 2) + sum_W_mod0;
}
if (n % 2 != 0) {
int sum_W_mod = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; i++) {
sum_W_mod += (W(i)*W(n-i));
}
return sum_W_mod;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0394, 2024-11-02 09:19:57, PPPPPPPPPP (100%)
#include <iostream>
#include <cmath>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)
return 1;
else if(k > n)
return 0;
else{
return T(n , k - 1) + T(n - 1 , k - 1) + T( n - 1 , k );
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
else if(n == 1){
return 2;
}
else{
long long sum = 0;
sum = sum + 3 * S(n - 1);
for(int k = 1 ; k <= n - 2 ; k++){
sum = sum + ( S(k) * S(n - k - 1));
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
else if(n == 1)
return 1;
else if(n % 2 != 0){
long long sum = 0;
for(int i = 1 ; i <= ( (n + 1) / 2 ) - 1 ; i++){
sum = sum + ( W(i) * W(n - i) );
}
return sum;
}
else{
long long sum = 0;
long long a = W(n / 2);
sum = sum + (a * (a + 1)) / 2;
for(int i = 1 ; i <= (n / 2 ) - 1 ; i++){
sum = sum + ( W(i) * W(n - i) );
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0395, 2024-11-02 12:48:41, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1)+ T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)return 1;
if(n == 1)return 2;
long long sum = 0;
for (long long k = 1; k <= n-2 ; k++){
sum += (S(k)*S(n-k-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n == 1)return n;
if(n%2 == 1){
long long sum = 0;
for (long long i = 1; i <= ((n+1)/2)-1; i++)
{
sum += (W(i)*W(n-i));
}
return sum;
}
long long sum = (W(n/2)*(W(n/2)+1))/2;
for (long long i = 1; i <= (n/2)-1; i++)
{
sum += (W(i)*W(n-i));
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0396, 2024-11-02 09:22:11, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long sum = 0;
for (int k=1; k <= n-2; k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
long long sum = 0;
if (n % 2 == 0) {
for (int i=1; i <= n/2 -1; i++) {
sum += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
else {
for (int i=1; i <= (n+1)/2 -1; i++) {
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0397, 2024-11-02 10:19:42, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
double sum = 0;
if(n == 0) return 1;
if(n == 1) return 2;
for(int k=1; k <= n-2; k++){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
double sum = 0;
if(n==0) return 0;
if(n==1) return 1;
if(n%2 == 0){
for(int i=1; i <= n/2 - 1; i++){
sum += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2) + 1)) / 2 + sum;
}
if(n%2 != 0){
for(int i=1; i <= (n+1)/2 - 1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0398, 2024-11-02 09:27:21, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) // Schroder Triangle
{
if(k > n){return 0;}
if(k == 0){return 1;}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) // Schroder Number
{
if(n >= 2)
{
long long sum = 0;
for (int k = 1; k <= n-2; k++)
{
sum += (S(k) * S(n-k-1));
}
return 3*S(n-1) + sum;
}
if(n == 1){return 2;}
if(n == 0){return 1;}
return 0;
}
long long W(int n) // Wedderburn–Etherington Number
{
if(n == 0){return 0;}
if(n == 1){return 1;}
if(n % 2 == 0)
{
long long qt = W(n/2)*(W(n/2)+1);
qt /= 2;
long long sum = 0;
for (int i = 1; i <= n/2 -1; i++)
{
sum += W(i)*W(n-i);
}
return qt + sum;
}
if(n % 2 == 1)
{
int idk = (n+1)/2 - 1;
long long sum = 0;
for (int i = 1; i <= idk; i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0399, 2024-11-02 12:47:08, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
else if (k > n)
return 0;
else
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
long long result = 3 * S(n - 1);
for (long long k = 1; k <= n - 2; k++)
{
result += S(k) * S(n - k - 1);
}
return result;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
long long result = 0;
if (n % 2 == 0)
{
result+=(W(n/2)*(W(n/2)+1))/2;
for(int i =1;i<=n/2-1;i++){
result+=W(i)*W(n-i);
}
}
else if(n%2==1){
for(int i =1;i<=(n+1)/2-1;i++){
result+=W(i)*W(n-i);
}
}
return result;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0400, 2024-11-02 12:56:38, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1) +T(n-1,k);
}
long long S(int n) { // Schroder Number
int x = 0;
if(n == 0) return 1;
if(n == 1) return 2;
int result = 3*S(n-1);
for(int k = 1; k<=n-2; ++k){
result += S(k)*S(n-k-1);
}
x = result;
return x;
}
long long W(int n) { // Wedderburn–Etherington Number
int x = 0;
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2 == 0){
x = (W(n/2)*(W(n/2)+1))/2;
for(int i = 1; i <= (n/2)-1 ; ++i){
x += W(i)*W(n-i);
}
return x;
}else{
x = 0;
for(int i = 1; i <= ((n+1)/2)-1; ++i){
x += W(i)*W(n-i);
}
return x;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0401, 2024-11-02 12:51:21, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+=(S(k)*S(n-k-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0||n==1) return n;
int sum=0;
if(n%2){
for(int i=1;i<=(n+1)/2-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
for(int i=1;i<=n/2-1;i++){
sum+=W(i)*W(n-i);
}
auto wn2=W(n/2);
return wn2*(wn2+1)/2+sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0402, 2024-11-02 13:15:46, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k){
if(k==0) return 1;
if(k>n) return 0;
if(1<k && k<=n){
return T(n,k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n){
if(n==0) return 1;
if(n==1) return 2;
if(n>=2) {
long long forPart = 0;
for(int k=1; k<= n-2; k++){
forPart+=S(k) * S(n-k-1);
}
return 3*S(n-1) + forPart;
}
}
long long W(int n){
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long forPart = 0;
for(int i=1; i<= (n/2)-1; i++){
forPart+=W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2 + forPart;
}
if(n%2==1){
long long forPart = 0;
for(int i=1; i<= n/2; i++){
forPart+=W(i)*W(n-i);
}
return forPart;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0403, 2024-11-02 09:26:27, PPPPPPPPPP (100%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
else {
return T(n,k-1) + T(n-1,k-1)+ T(n-1,k);
}
}
long long S(int n) { // Schroder Number
long long int sum=0;
if(n==0) return 1;
if(n==1) return 2;
else{
for(int k=1 ; k<=n-2 ; k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long int sum=0;
if(n%2==0) {
for(int i=1 ; i<=n/2-1 ; i++){
sum += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
if(n%2==1) {
for(int i=1 ; i<=(n+1)/2-1 ; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0404, 2024-11-02 10:38:25, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
int sum = 0;
for (int k = 1; k <= n-2; ++k) {
sum += (S(k) * S(n-k-1));
}
sum += (3 * S(n-1));
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
int sum = 0;
if (n%2 == 0) {
sum += (W(n/2) * (W(n/2) + 1)) / 2;
for (int k = 1; k <= (n/2)-1; ++k) {
sum += (W(k) * W(n-k));
}
}
else {
for (int k = 1; k <= ((n+1)/2)-1; ++k) {
sum += (W(k) * W(n-k));
}
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0405, 2024-11-02 12:43:23, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
int sum = 3*S(n-1);
for(int i = 1; i < n-1; i++) {
sum += S(i) *S(n-1-i);
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n % 2 == 0) {
int sum = (W(n/2)*(W(n/2)+1))/2;
for(int i =1; i < n/2; i++) sum += W(i)*W(n-i);
return sum;
} else {
int sum = 0;
for(int i = 1; i < (n+1)/2; i++) sum += W(i)*W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0406, 2024-11-02 12:43:30, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n)
{ // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
int result = 0;
for(int k=1;k<=n-2;k++){
result += (S(k) * S(n-k-1));
}
return 3*S(n-1) + result;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0){
int result = 0;
for(int i=1;i<=(n/2 - 1);i++){
result += W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1)) / 2 + result;
}
else{
int result = 0;
for(int i=1;i<=((n+1)/2 - 1); i++){
result += W(i) * W(n-i);
}
return result;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0407, 2024-11-02 12:56:59, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0 ;
return T(n,k-1) +T(n-1,k-1)+T(n-1,k) ;
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2 ;
int sum=0;
for (int k=1;k<=n-2;k++) {
sum+=(S(k)*S(n-k-1)) ;
}
int first=(3*S(n-1)) ;
return first+sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
int h = n/2 ;
int sum=0;
for (int i=1;i<=h-1;i++) {
sum+=(W(i)*W(n-i)) ;
}
int first = (W(h)*(W(h)+1))/2 ;
return first+sum ;
}
if (n%2!=0) {
int sum=0;
int x=((n+1)/2)-1;
for (int i=1;i<=x;i++) {
sum+=(W(i)*W(n-i)) ;
}
return sum ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0408, 2024-11-02 09:22:42, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(!n)return 1;
if(n==1)return 2;
long long sum=0;
for(long long i=1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n<=1)return n;
if(n%2){
long long sum=0;
for(long long i=1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}else{
long long sum=0;
for(long long i=1;i<=(n/2)-1;i++){
sum+=W(i)*W(n-i);
}
int tmp=W(n/2)*(W(n/2)+1)/2;
return tmp+sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0409, 2024-11-02 12:49:31, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum = 0;
for(long long i = 1; i <= n-2; i++) {
sum += S(i) * S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2 == 0) {
long long sum = 0;
for(long long i = 1; i <= n/2-1; i++) {
sum += W(i) * W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
} else {
long long sum = 0;
for(long long i = 1; i <= ((n+1)/2)-1; i++) {
sum +=(W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0410, 2024-11-02 12:42:30, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
long long store =0;
for(long long i=1 ; i<=n-2 ; i++){
store+=S(i)*S(n-i-1);
}
return 3*S(n-1)+store;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long store=0;
for(long long i=1 ; i<= n/2 - 1 ; i++){
store += W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2+store;
}
else{
long long store=0;
for(long long i=1 ; i<= (n+1)/2 -1 ; i++){
store += W(i)*W(n-i);
}
return store;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0411, 2024-11-02 12:48:15, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long total=0;
for(int k=1;k<n-1;++k)
{
total+=(S(k)*S(n-k-1));
}
return 3*S(n-1)+total;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0)
{
long long total=0;
for(int i=1;i<n/2;++i)
{
total+=(W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1)/2)+total;
}
else
{
long long total=0;
for(int i=1;i<(n+1)/2;++i)
{
total+=(W(i)*W(n-i));
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0412, 2024-11-02 09:35:56, PPPPPPPPPP (100%)
#include <iostream>
#include <math.h>
#include <cmath>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
if (k > n)
return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if (n == 0)
return 1;
if (n == 1)
return 2;
if (n >= 2)
{
for (long long k = 1; k <= n - 2; k++)
{
sum += (S(k) * S(n - k - 1));
}
return (3 * S(n - 1)) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if(n%2==0){
long long sum = 0;
for (long long i=1;i<=(((int)(n/2))-1);i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
else{
long long sum = 0;
for (long long i=1;i<=(((int)((n+1)/2))-1);i++){
sum+=(W(i)*W(n-i));
}
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0413, 2024-11-02 09:26:26, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0)return 1;
else if(k>n)return 0;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
long long sum=0;
if(n==0||n==1)return n+1;
else if(n>=2){
for(int i=1;i<=n-2;i++)sum+=S(i)*S(n-i-1);
return 3*S(n-1)+sum;
}
}
long long W(int n) {
long long sum=0;
if(n==0||n==1)return n;
else if(n%2==0){
for(int i=1;i<=n/2-1;i++)sum+=W(i)*W(n-i);
return (W(n/2)*(W(n/2)+1))/2+sum;
}else if(n%2!=0){
for(int i=1;i<=(n+1)/2-1;i++)sum+=W(i)*W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0414, 2024-11-02 09:21:26, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0){
return 1;
}
if (k > n){
return 0;
}
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
long long S(int n) { // Schroder Number
if (n == 0){
return 1;
}
if (n == 1){
return 2;
}
int sum = 0;
for (int k = 1 ; k <= n - 2 ; ++k){
sum += S(k) * S(n - k -1);
}
return 3 * S(n - 1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0){
return 0;
}
if (n == 1){
return 1;
}
if (n % 2 == 1 && n > 1){
int sum = 0;
for (int i = 1 ; i <= (n + 1)/2 - 1 ; ++i){
sum += W(i) * W(n - i);
}
return sum;
}
if (n % 2 == 0 && n > 0){
int sum = 0;
for (int i = 1 ; i <= n/2 - 1 ; ++i){
sum += W(i) * W(n - i);
}
return W(n / 2) * (W(n / 2) + 1) / 2 + sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0415, 2024-11-02 09:22:52, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0) return 1;
else if (k > n) return 0;
else
{
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n)
{ // Schroder Number
if (n == 0) return 1;
else if (n == 1) return 2;
else
{
long long sumRight = 0;
for (int k = 1; k <= n-2; k++)
{
sumRight += S(k) * S(n - k - 1);
}
return (3 * S(n - 1)) + sumRight;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0) return 0;
else if (n == 1) return 1;
else
{
if (n % 2 == 0)
{
long long left, sumRight = 0;
left = (W(n/2) * (W(n/2) + 1)) / 2;
for (int i = 1; i <= (n/2) - 1; i++)
{
sumRight += W(i) * W(n-i);
}
return left + sumRight;
}
else
{
long long sum = 0;
for (int i = 1; i <= ((n+1)/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0416, 2024-11-02 09:20:17, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n){ // Schroder Number
long long i,sum=0;
if(n==0){
return 1;
}
if(n==1){
return 2;
}
for(i=1;i<=n-2;i++){
sum=sum+S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n){ // Wedderburn–Etherington Number
long long i,sum=0;
if(n==0){
return 0;
}
if(n==1){
return 1;
}
if(n%2==0){
for(i=1;i<=(n/2)-1;i++){
sum=sum+W(i)*W(n-i);
}
sum=sum+(W(n/2)*(W(n/2)+1))/2;
}
if(n%2==1){
for(i=1;i<=n/2;i++){
sum=sum+W(i)*W(n-i);
}
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0417, 2024-11-02 09:24:18, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
else if(k>n) return 0;
else return T(n,k-1) + T(n-1,k-1) +T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
else if(n==1) return 2;
else {long long sum = 0;
for(long long int i = 1; i<=n-2;i++){
sum += S(i)* S(n-i-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
else if (n==1) return 1;
else if(n%2 == 0){
long long sum=0;
for(long long i = 1;i<=n/2-1;i++){
sum+= W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + sum;
}
else{
long long sum = 0;
for(long long i = 1;i<=(n+1)/2-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0418, 2024-11-02 15:21:47, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
else return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
return 0;
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
if(n>=2){
long long z =0;
for(long long k = 1; k<= n-2 ; k++){
z += (S(k)*S(n-k-1));
}
return z+3*S(n-1) ;
}
return 0;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0||n==1)return n;
if(n%2==0){
long long z =0; long long k = n/2-1;
for(int i = 1 ; i <= k ; i++)z+= W(i)*W(n-i);
return (long long) z+(W(n/2)*(W(n/2)+1))/2 ;
}
else {
long long z =0; long long k = (n+1)/2-1;
for(int i = 1 ; i <= k ; i++)z+= W(i)*W(n-i);
return z;
}
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0419, 2024-11-02 12:46:08, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long result = 0;
for (int k =1; k<=n-2; k++) {
result += S(k)*S(n-k-1);
}
return 3*S(n-1) + result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
long long result = 0;
for (int i=1; i<=n/2-1; i++) {
result += W(i)*W(n-i);
}
return (W(n/2)*(W((n/2))+1))/2 + result;
} else {
long long res = 0;
for (int i =1; i<=((n+1)/2)-1; i++) {
res += W(i)*W(n-i);
}
return res;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0420, 2024-11-02 14:43:18, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k > n)
return 0;
if (k == 0)
return 1;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
int sum = 0;
for (int k = 1; k <= (n - 2); ++k)
sum += (S(k) * S(n - k - 1));
return ((3 * S(n - 1)) + sum);
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 0)
{
int calc = (W(n / 2) * (W(n / 2) + 1)) / 2;
int sum = 0;
for (int i = 1; i <= (n / 2) - 1; ++i)
sum += (W(i) * W(n - i));
return calc + sum;
}
else
{
int sum = 0;
for (int i = 1; i <= ((n + 1) / 2) - 1; ++i)
sum += (W(i) * W(n - i));
return sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0421, 2024-11-02 09:31:04, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n== 1) return 2;
long long rs = 3*S(n-1);
for (long long k = 1 ; k<= n-2;k++)
{
rs += S(k)* S(n-k-1);
}
return rs;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2 == 0)
{
long long rs = (W(n/2.0)*(W(n/2.0)+1))/2.0;
for (long long i = 1 ; i<= (n/2.0)-1;i++)
{
rs += W(i)*W(n-i);
}
return rs;
}
else
{
long long rs = 0;
for (long long i = 1 ; i<=((n+1)/2.0)-1;i++)
{
rs += W(i) * W(n-i);
}
return rs;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0422, 2024-11-02 09:20:44, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0) return 1;
if (k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long sum = 0;
for (int i=1;i<=n-2;i++) {
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
if (n%2==0) {
long long f = (W(n/2) * (W(n/2)+1)) / 2;
long long sum = 0;
for (int i = 1;i<=(n/2)-1;i++) {
sum += W(i)*W(n-i);
}
return f + sum;
}
else {
long long sum = 0;
for (int i=1;i<=((n+1)/2)-1;i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0423, 2024-11-02 10:32:29, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0){
return 1;
}else if(k>n){
return 0;
}else {
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) {
if(n==0){
return 1;
}else if(n==1){
return 2;
}else{
int sum=0;
for(int i=1;i<=n-2;++i){
sum+=(S(i)*S(n-i-1));
}
return 3*S(n-1)+sum;
}
}
long long W(int n) {
if(n==0){
return 0;
}else if(n==1){
return 1;
}else if(n%2==0){
int sum=0;
for(int i=1;i<=(n/2)-1;++i){
sum+=W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;
}else{
int sum=0;
for(int i=1;i<=((n+1)/2)-1;++i){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0424, 2024-11-02 12:44:47, PPPPPPPPPP (100%)
#include <iostream>
#include <map>
#include <vector>
#include <set>
#include <map>
#include <utility>
#include <tuple>
#include <cmath>
#include <algorithm>
#include <cctype>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
if (k > n)
return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
long long int sum = 0;
for (int i = 1; i <= n - 2; i++)
{
sum += S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if(n%2==0){
long long int sum = 0;
for (int i = 1; i <= (n/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return (( W(n/2)*(W(n/2)+1) )/2) + sum;
}
long long int sum = 0;
for (int i = 1; i <= ((n+1)/2)-1; i++)
{
sum += W(i)*W(n-i);
}
return sum;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0425, 2024-11-02 12:44:21, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long int sum=0;
for(int k=1; k<=n-2; k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long int sum = 0;
for(int i=1; i<= (n/2)-1; i++){
sum += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}else{
long long int sum = 0;
for(int i=1; i<= ((n+1)/2)-1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
}
/*
T 10 11
T 100 0
T 12 10
S 0
S 1
S 20
W 0
W 1
W 20
*/ |
# 0426, 2024-11-02 14:03:11, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
long long S(int n) { // Schroder Number
if(n<2)return (n+1);
long long result = 0;
result += 3*S(n-1);
for(int k =1;k<=n-2;k++)result += (S(k)*S(n-k-1));
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n<2)return n;
if(n%2==0){
long long result = 0;
result += (W(n/2)*(W(n/2)+1));
result /= 2;
for(int i=1;i<=(n/2)-1;i++)result += (W(i)*W(n-i));
return result;
}
else {
long long result = 0;
for(int i=1;i<=((n+1)/2)-1;i++)result += (W(i)*W(n-i));
return result;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0427, 2024-11-02 10:31:57, PPPPPPPPPP (100%)
// BossPaul
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sum = 0;
sum = sum + (3*S(n-1));
for(long long k=1;k<=n-2;k++){
sum = sum + (S(k)*S(n-k-1));
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long sum = 0;
for(long long i=1;i<=((n/2)-1);i++){
sum = sum + (W(i)*W(n-i));
}
sum = sum + ((W(n/2)*(W(n/2)+1))/2);
return sum;
}
long long sumo = 0;
for(long long j=1;j<=(((n+1)/2)-1);j++){
sumo = sumo + (W(j)*W(n-j));
}
return sumo;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0428, 2024-11-02 09:24:09, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if (k == 0)
return 1;
if (k > n)
return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
long long sum = 0;
for (int k = 1; k <= n - 2; ++k)
{
sum += S(k) * S(n - k - 1);
}
return 3 * S(n - 1) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sum = 0;
if(n==0)
return 0;
if(n==1)
return 1;
if (n % 2 == 0)
{
for(int i=1;i<=(n/2)-1;++i)
{
sum+=W(i)*W(n-i);
}
return W(n/2)*(W(n/2)+1)/2 +sum;
}
for(int i=1;i<=(n+1)/2-1;++i)
{
sum+=W(i)*W(n-i);
}
return sum;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0429, 2024-11-02 12:56:32, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) ;
long long S(int n);
long long W(int n);
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k < 0) return 0;
if(n < 0) return 0;
if(k > n) return 0;
if(1 < k || k <= n) return T(n, k-1) + T(n-1, k-1) + T(n-1,k) ;
//return (n,k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n < 0) return 0;
if(n == 1) return 2;
long long j = 0;
for(int k = 1; k <= n-2; k++){
j += S(k) * S(n-k-1) ;
}
if(n >= 2) return 3*S(n-1) + j;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n < 0) return 0;
if(n == 1) return 1;
int j = 0;
int l = 0;
int k = 0;
if(n % 2 == 0){
for(int i = 1; i <= (n/2) - 1; i++){
l += W(i)* W(n-i);
}
k = ( (W(n/2)) * (W(n/2) + 1)) / 2 + l;
return k;
}else{
for(int i = 1; i <= ((n+1)/2) - 1; i++){
j += W(i)* W(n-i);
}
return j;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0430, 2024-11-02 09:23:14, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
else if(k > n){
return 0;
}
else{
return(T(n, k-1) + T(n-1, k-1) + T(n -1, k));
}
}
long long S(int n) { // Schroder Number
if(n >= 2){
long long sum = 0;
for(long long k = 1; k <= (n-2); k++){
sum += (S(k) * S(n-k-1));
}
return 3*S(n-1) + sum;
}
else if(n == 0){
return 1;
}
else if(n == 1){
return 2;
}
return 0;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
else if(n == 1) return 1;
else if(n % 2 == 0){
long long sum = 0;
for(int i = 1; i <= ((n/2) -1); i++){
sum += (W(i) * W(n-i));
}
return (W(n/2)*(W(n/2)+1))/2 + sum;
}
else{
long long sum = 0;
for(int i = 1; i <= (((n+1)/2) -1); i++){
sum += (W(i) * W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0431, 2024-11-02 12:07:23, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k > n) return 0;
if (k == 0) return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) {
long long total = 0;
if (n == 0) return 1;
if (n == 1) return 2;
for (int i = 1;i<=n-2;i++){
total += (S(i)*S(n - i - 1));
}
return 3*S(n-1) + total;
}
long long W(int n) {
long long total1 = 0;
long long total2 = 0;
int nhalf = n/2;
if (n == 0) return 0;
if (n == 1) return 1;
if (n % 2 == 0) {
for (int i = 1;i <= ((nhalf)-1);i++) {
total1 += W(i)*W(n-i);
}
return (W(nhalf)*(W(nhalf)+1))/2 + total1;
}
if (n % 2 != 0) {
for (int i = 1;i <= (((n+1)/2)-1);i++) {
total2 += W(i)*W(n-i);
}
return total2;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0432, 2024-11-02 12:51:00, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) return 1;
if (k > n) return 0;
return T(n, k-1) + T(n-1, k-1) + T (n-1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long sum = 0;
for (int K = 1; K <= n-2; K++) {
sum += S(K) * S(n-K-1);
}
return 3 * S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
if (n % 2 == 0) {
long long sum = 0;
for (int i = 1; i <= ((n/2)-1); i++) {
sum += W(i) * W(n-i);
}
return ((W(n/2) * (W(n/2)+1)) / 2) + sum;
}
if (n % 2 == 1) {
int sum = 0;
for (int i = 1; i <= ((n+1)/2)-1; i++) {
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0433, 2024-11-02 09:36:50, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0)return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long result = 0;
if(n >= 2){
for(int k = 1;k<=n-2;k++){
result += S(k)*S(n-k-1);
}
}
return 3*S(n-1)+ result;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long result = 0;
if(n%2 ==1){
for(int i =1;i<= ((n+1)/2)-1;i++){
result += W(i)*W(n-i);
}
}else if(n%2 ==0){
long long sum = 0;
for(int i= 1;i<=(n/2)-1;i++){
sum +=W(i)*W(n-i);
}
result += (W(n/2)*(W(n/2)+1))/2 + sum;
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0434, 2024-11-02 12:46:44, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long sum = 3*S(n - 1);
for (int k =1 ; k < n - 1; k++){
sum += (S(k)*S(n - k - 1));
}
return sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
long long sum = 0;
if (n % 2 == 0) {
sum = W(n/2) * (W(n/2) + 1) / 2;
for (int i = 1 ; i < n / 2; i++) sum += (W(i) * W(n-i));
} else {
for (int i = 1 ; i < (n + 1)/ 2 ; i++) sum += (W(i) * W(n - i));
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0435, 2024-11-02 09:20:18, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if( k == 0) return 1;
if( k > n ) return 0;
return T(n, k - 1) + T(n-1, k - 1) + T (n - 1, k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long int sum = 0;
for(int k = 1; k <= n-2 ; k++){
sum += S(k) * S(n - k -1);
}
return 3 * S(n - 1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
long long int sum = 0;
if(n % 2 == 0){
//even
for(int i = 1 ; i <= (n/2) - 1; i++){
sum += W(i) * W(n - i);
}
return ((W(n/2) * (W(n/2) + 1)) / 2 )+ sum;
}else{
//odd
for(int i = 1 ; i <= (n+1)/2 - 1; i++){
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0436, 2024-11-02 15:21:30, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) {
return 0 ;
}
else if(k == 0) {
return 1 ;
}
else {
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k) ;
}
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1 ;
}
else if(n == 1) {
return 2 ;
}
else {
long long result = 0 ;
for(int i = 1 ; i <= n - 2 ; i++) {
result += S(i) * S(n - i - 1) ;
}
return 3 * S(n - 1) + result ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) {
return 0 ;
}
else if(n == 1) {
return 1 ;
}
else if(n % 2 == 0) {
long long result = 0 ;
for(int i = 1 ; i <= n / 2 - 1 ; i++) {
result += W(i) * W(n - i) ;
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + result ;
}
else {
long long result = 0 ;
for(int i = 1 ; i <= (n + 1) / 2 - 1 ; i++) {
result += W(i) * W(n - i) ;
}
return result ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0437, 2024-11-02 09:20:15, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) return 0;
if (k == 0) return 1;
return T(n, k-1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) return 1;
if (n == 1) return 2;
long long sum = 0;
for (int k = 1; k <= n - 2; k++) {
sum += S(k)*S(n - k - 1);
}
return 3 * S(n - 1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) return 0;
if (n == 1) return 1;
if (n % 2 == 0) {
long long sum = 0;
for (int i = 1; i <= (n/2) - 1; i++) {
sum += (W(i)*W(n - i));
}
return (W(n / 2)*(W(n / 2) + 1) / 2) + sum;
} else {
long long sum = 0;
for (int i = 1; i <= ((n + 1)/2) - 1; i++) {
sum += (W(i)*W(n - i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0438, 2024-11-02 12:48:58, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n) return 0;
if(k == 0) return 1;
return (T(n, k-1)+ T(n-1, k-1) + T(n-1, k));
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
long long sum = 0;
for(int i = 1; i <= n-2; i++){
sum += S(i)*S(n-i-1);
}
return (3*S(n-1) + sum); //????
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
int sum = 0;
if(n%2 == 0){
for(int i = 1; i <= n/2 - 1; i++){
sum += W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1)/2 + sum);
}
for(int i = 1; i <= (n+1)/2 - 1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0439, 2024-11-02 09:23:54, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
else if(k > n){
return 0;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
else if(n == 1){
return 2;
}
int k;
long long sum=0;
for(k=1;k<=n-2;k++){
sum += S(k)*S(n-k-1);
}
return (3*S(n-1))+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
else if(n == 1){
return 1;
}
else if(n%2 == 1){
int i;
long long sum=0;
for(i=1;i<=((n+1)/2.0)-1;i++){
sum += W(i)*W(n-i);
}
return sum;
}
int i;
long long w,sum=0;
w=(W(n/2.0)*(W(n/2)+1))/2.0;
for(i=1;i<=(n/2.0)-1;i++){
sum += W(i)*W(n-i);
}
return w+sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0440, 2024-11-02 09:19:40, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){return 1;}
if(k > n){return 0;}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0){return 1;}
if(n == 1){return 2;}
long long total = 3 * S(n-1);
for(int k = 1; k<=n-2; k++){
total += S(k) * S(n-k-1);
}
return total;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n == 1){return n;}
if(n%2 == 0){
long long total = (W(n/2)*((W(n/2))+1))/2;
for(int i = 1; i <= n/2-1; i++){
total += W(i)*W(n-i);
}
return total;
}
else{
long long total = 0;
for(int i = 1; i <= ((n+1)/2)-1; i++){
total += W(i) * W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0441, 2024-11-02 12:44:01, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > n)return 0;
else if(k == 0)return 1;
else{
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0)return 1;
else if(n == 1)return 2;
else{
long long sum = 0;
for(int k = 1;k <=n-2;k++){
sum+= S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
else if(n == 1)return 1;
else if(n%2==1){
long long sum = 0;
for(int i = 1;i <=((n+1)/2)-1;i++){
sum+=(W(i)*W(n-i));
}
return sum;
}
else{
long long sum = 0;
for(int i = 1;i <=(n/2)-1;i++){
sum+=(W(i)*W(n-i));
}
return (W(n/2)*(W(n/2)+1))/2+sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0442, 2024-11-02 11:06:19, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
else return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum=0;
for(int i=1;i<=n-2;i++)sum+=S(i)*S(n-i-1);
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==0){
long long sum=0;
for(int i=1;i<=n/2-1;i++)sum+=W(i)*W(n-i);
return (W(n/2)*(W(n/2)+1))/2+sum;
}
else{
long long sum=0;
for(int i=1;i<=(n+1)/2-1;i++)sum+=W(i)*W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0443, 2024-11-02 09:22:32, PPPPPPPPPP (100%)
#include <iostream>
using namespace std;
// Schroder Triangle
long long T(int n, int k) {
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
// Schroder Number
long long S(int n) {
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
long long sum = 0;
for (int k = 1; k < n-1; k++)
{
sum += S(k)*S(n-k-1);
}
return 3*S(n-1) + sum;
}
// Wedderburn–Etherington Number
long long W(int n) {
if(n == 0 || n == 1){
return n;
}
if(n % 2 == 0){
long long sum = 0;
for (int i = 1; i <= n / 2 - 1; i++)
{
sum += W(i)*W(n-i);
}
return W(n/2)*(W(n/2) + 1)/ 2 + sum;
}else{
long long sum = 0;
for (int i = 1; i <= (n + 1) / 2 - 1; i++)
{
sum += W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0444, 2024-11-02 12:43:41, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
int w = (W(n/2)*W((n/2)+1))/2;
for(int i=1; i<(n/2)-1; i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
int w=0;
for(int i=1; i<(n+1)/2 - 1; i++){
w += (W(i)*W(n-1));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0445, 2024-11-02 14:29:47, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<(n/2)-1; i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w=0;
for(int i=1; i<(n+1)/2 - 1; i++){
w += (W(i)*W(n-1));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0446, 2024-11-02 14:30:37, PPPPPPP-T- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<(n/2); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w=0;
for(int i=1; i<(n+1)/2; i++){
w += (W(i)*W(n-1));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0447, 2024-11-02 14:31:38, PPPPPPP-T- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<=((n/2) -1); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w=0;
for(int i=1; i<=((n+1)/2)-1; i++){
w += (W(i)*W(n-1));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0448, 2024-11-02 14:36:03, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<=((n/2) -1); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w=0;
for(int i=1; i<=((n+1)/2)-1; i++){
w += (W(i)*W(n-i));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0449, 2024-11-02 15:25:03, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-2; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<=((n/2) -1); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w = 0;
for(int i=1; i<=(((n+1)/2)-1); i++){
w += (W(i)*W(n-i));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0450, 2024-11-02 15:25:32, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<((n/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w = 0;
for(int i=1; i<(((n+1)/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0451, 2024-11-02 15:25:53, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<((n/2)-1); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w = 0;
for(int i=1; i<(((n+1)/2)-1); i++){
w += (W(i)*W(n-i));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0452, 2024-11-02 15:26:10, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<((n/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w = 0;
for(int i=1; i<(((n+1)/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0453, 2024-11-02 15:30:51, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
float w;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<((n/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w = 0;
for(int i=1; i<(((n+1)/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
return w;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0454, 2024-11-02 15:31:11, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
float w;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<((n/2)); i++){
w += (W(i)*W(n-i));
}
}
if(n%2==1){
float w = 0;
for(int i=1; i<(((n+1)/2)); i++){
w += (W(i)*W(n-i));
}
}
return w;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0455, 2024-11-02 15:31:25, PPPPPPPPP- (90%)
#include <iostream>
using namespace std;
long long T(int n, int k){ // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n){ // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
float s = 3*S(n-1);
for(int k=1; k<n-1; k++){
s += S(k) * S(n-k-1);
}
return s;
}
long long W(int n){ // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
float w;
if(n%2==0){
float w = (W(n/2)*(W(n/2)+1))/2;
for(int i=1; i<((n/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
if(n%2==1){
float w = 0;
for(int i=1; i<(((n+1)/2)); i++){
w += (W(i)*W(n-i));
}
return w;
}
return w;
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0456, 2024-11-02 12:58:35, PPPP--P--- (50%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
if(1 <= k && k >= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
int s1 = 3 * S(n-1);
int s2 = 0;
int sum = 0;
for(int i = 1; i <= (n/2); i++){
s2 += S(i)*S(n -i-1);
}
sum = s1 + s2;
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0){
int e = W(n/2);
int o = W(n/2) + 1;
int s1 = (e * o)/2;
int sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
if(n % 2 == 1){
int sum = 0;
for(int i = 1; i <= ((n+1)/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0457, 2024-11-02 13:01:16, PPPP--P--- (50%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
if(1 <= k && k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
int s1 = 3 * S(n-1);
int s2 = 0;
int sum = 0;
for(int i = 1; i <= (n/2); i++){
s2 += S(i)*S(n -i-1);
}
sum = s1 + s2;
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0){
int e = W(n/2);
int o = W(n/2) + 1;
int s1 = (e * o)/2;
int sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
if(n % 2 == 1){
int sum = 0;
for(int i = 1; i <= ((n+1)/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0458, 2024-11-02 13:02:47, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
if(1 <= k && k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
int s1 = 3 * S(n-1);
int s2 = 0;
int sum = 0;
for(int i = 1; i <= (n-2); i++){
s2 += S(i)*S(n -i-1);
}
sum = s1 + s2;
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0){
int e = W(n/2);
int o = W(n/2) + 1;
int s1 = (e * o)/2;
int sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
if(n % 2 == 1){
int sum = 0;
for(int i = 1; i <= ((n+1)/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0459, 2024-11-02 13:04:14, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
if(1 <= k && k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
long long s1 = 3 * S(n-1);
long long s2 = 0;
long long sum = 0;
for(int i = 1; i <= (n-2); i++){
s2 += S(i)*S(n -i-1);
}
sum = s1 + s2;
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n % 2 == 0){
int e = W(n/2);
int o = W(n/2) + 1;
int s1 = (e * o)/2;
int sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
if(n % 2 == 1){
int sum = 0;
for(int i = 1; i <= ((n+1)/2) -1; i++){
sum += W(i)*W(i-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0460, 2024-11-02 13:11:54, PPPPPPxPPP (90%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
if(1 <= k && k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
long long s1 = 3 * S(n-1);
long long s2 = 0;
long long sum = 0;
for(int i = 1; i <= (n-2); i++){
s2 += S(i)*S(n -i-1);
}
sum = s1 + s2;
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
// if(n == 0){
// return 0;
// }
if(n == 1){
return 1;
}
if(n % 2 == 0){
int e = W(n/2);
int o = W(n/2) + 1;
int s1 = (e * o)/2;
int s2 = 0;
for(int i = 1; i <= (n/2) -1; i++){
s2 += W(i)*W(n-i);
}
int sum = s1 + s2;
return sum;
}
if(n % 2 == 1){
int sum = 0;
for(int i = 1; i <= ((n+1)/2) -1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0461, 2024-11-02 13:12:46, PPPPPPxPPP (90%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
if(k > n){
return 0;
}
if(1 <= k && k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
long long s1 = 3 * S(n-1);
long long s2 = 0;
long long sum = 0;
for(int i = 1; i <= (n-2); i++){
s2 += S(i)*S(n -i-1);
}
sum = s1 + s2;
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
// if(n == 0){
// return 0;
// }
if(n == 1){
return 1;
}
if(n % 2 == 0){
long long e = W(n/2);
long long o = W(n/2) + 1;
long long s1 = (e * o)/2;
long long s2 = 0;
for(int i = 1; i <= (n/2) -1; i++){
s2 += W(i)*W(n-i);
}
long long sum = s1 + s2;
return sum;
}
if(n % 2 == 1){
long long sum = 0;
for(int i = 1; i <= ((n+1)/2) -1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0462, 2024-11-02 09:37:24, PPPPPPPPTP (90%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1)+T(n-1,k-1) +T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sum=0;
for(int k=1;k<=n-2;k++){
(sum +=S(k)*S(n-k-1));
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sum1=0,sum2=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum1 +=W(i)*W(n-i);
}
for(int i=1;i<=(n/2)-1;i++){
sum2 +=W(i)*W(n-i);
}
if(n%2==1) return sum1;
return (W(n/2)*(W(n/2)+1))/2 + sum2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0463, 2024-11-02 13:05:58, ---P---xxx (10%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 0;
else if (k > n)return 1;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long Sum=0;
for (int k=1;k <= (n-2);k++){
Sum += S(k)* S(n-k-1);
}return Sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return n;
if (n==1) return 0;
long long All=0;
for (int i=0;i <= ((n+1)/2)-1;i++){
All += W(i)* W(n-i);
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0464, 2024-11-02 13:39:23, PPPPxx-xxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n+2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return n;
if (n==1) return 0;
long long All=0;
for (int i=0;i <= ((n+1)/2)-1;i++){
All += W(i)* W(n-i);
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0465, 2024-11-02 13:44:03, PPPP---xxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return n;
if (n==1) return 0;
long long All=0;
for (int i=0;i <= ((n+1)/2)-1;i++){
All += W(i)* W(n-i);
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0466, 2024-11-02 13:53:45, PPPP--P-T- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i <= (n/2)-1;i++){
All += (W(n/2)*W((n/2))+1)/2 * (W(i)* W(n-i));
}
for (int i=1;i <= ((n+1)/2)-1;i++){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0467, 2024-11-02 13:57:43, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;i++){
All +=(W(n/2)*W((n/2))+1)/2 * (W(i)* W(n-i));
}
for (int i=1;i < ((n+1)/2)-1;i++){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0468, 2024-11-02 14:01:21, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
All +=(W(n/2)*W((n/2))+1)/2 ;
for (int i=1;i < (n/2)-1;i++){
All +=(W(n/2)*(W((n/2))+1)/2) * (W(i)* W(n-i));
}
for (int i=1;i < ((n+1)/2)-1;i++){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0469, 2024-11-02 14:05:02, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
long long sum=0;
sum += (W(n/2)*(W((n/2))+1)/2) ;
for (int i=1;i < (n/2)-1;i++){
All += (W(i)* W(n-i));
}All += sum*All;
for (int i=1;i < ((n+1)/2)-1;i++){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0470, 2024-11-02 14:09:00, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;i+2){
All += (W(n/2)*(W((n/2))+1)/2)*(W(i)* W(n-i));
}
for (int i=1;i < ((n+1)/2)-1;i+2){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0471, 2024-11-02 14:27:30, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += (3*S(n-1)) + S(k)*(S(n-k-1));
}return All;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;i+2){
All += (W(n/2)*(W((n/2))+1)/2)*(W(i)* W(n-i));
}
for (int i=1;i < ((n+1)/2)-1;i+2){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0472, 2024-11-02 14:29:53, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;i+2){
All += (W(n/2)*(W((n/2))+1)/2)*(W(i)* W(n-i));
}
for (int i=1;i < ((n+1)/2)-1;i+2){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0473, 2024-11-02 14:32:09, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;i+2){
All += (W(i)* W(n-i));
}return All *= (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < ((n+1)/2)-1;i+2){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0474, 2024-11-02 14:32:46, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;i++){
All += (W(i)* W(n-i));
}return All *= (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < ((n+1)/2)-1;i++){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0475, 2024-11-02 14:34:40, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;2+i++){
All += (W(i)* W(n-i));
}return All *= (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < ((n+1)/2)-1;2+i++){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0476, 2024-11-02 14:37:10, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long All=0;
for (int i=1;i < (n/2)-1;i++){
All += (W(n/2)*(W((n/2))+1)/2)*(W(i)* W(n-i));
}return All ;
for (int i=1;i < ((n+1)/2)-1;i++){
All += (W(i)* W(n-i));
}return All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0477, 2024-11-02 14:38:26, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
for (int i=1;i < (n/2)-1;i++){
Sum += (W(n/2)*(W((n/2))+1)/2)*(W(i)* W(n-i));
}return Sum ;
for (int i=1;i < ((n+1)/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0478, 2024-11-02 14:45:14, PPPPPP---- (60%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return n;
if (n==1) return n-1;
long long Sum=0;
long long All=0;
All = (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < (n/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum;
for (int i=1;i < (n+1/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum;
return Sum*All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0479, 2024-11-02 14:45:32, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < (n/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum;
for (int i=1;i < (n+1/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum;
return Sum*All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0480, 2024-11-02 14:46:14, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < (n/2)-1;++i){
Sum += (W(i)* W(n-i));
}return Sum;
for (int i=1;i < (n+1/2)-1;++i){
Sum += (W(i)* W(n-i));
}return Sum;
return Sum*All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0481, 2024-11-02 14:47:51, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < (n/2)-1;i++){
Sum += (W(i)* W(n-i));
for (int i=1;i < (n+1/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum*All;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0482, 2024-11-02 14:48:37, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*(W((n/2))+1)/2);
for (int i=1;i < (n/2)-1;i++){
Sum += (W(i)* W(n-i));
return Sum;
for (int i=1;i < (n+1/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum*All;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0483, 2024-11-02 14:50:54, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
for (int i=1;i < (n/2)-1;i++){
Sum += (W(i)* W(n-i));
}All = (W(n/2)*((W(n/2))+1)/2);
for (int i=1;i < (n+1/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum+All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0484, 2024-11-02 14:52:38, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*((W(n/2))+1)/2);
for (int i=1;i < (n/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum*All;
for (int i=1;i < (n+1/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum+All;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0485, 2024-11-02 14:53:45, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*((W(n/2))+1)/2);
for (int i=1;i < (n/2)-1;i++){
Sum = (W(i)* W(n-i));
}return Sum*All;
for (int i=1;i < (n+1/2)-1;i++){
Sum = (W(i)* W(n-i));
}return Sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0486, 2024-11-02 14:54:29, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*((W(n/2))+1)/2);
for (int i=1;i < (n/2)-1;i++){
Sum += All*(W(i)* W(n-i));
}return Sum;
for (int i=1;i < (n+1/2)-1;i++){
Sum += (W(i)* W(n-i));
}return Sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0487, 2024-11-02 15:25:18, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
long long All=0;
All = (W(n/2)*((W(n/2))+1)/2);
for (int i=1;i < (n/2)-1 && i < (n+1/2)-1;i++){
Sum += (W(n/2)*((W(n/2))+1)/2) * (W(i)* W(n-i));
}return Sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0488, 2024-11-02 15:25:40, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)return 1;
else if (k > n)return 0;
return T(n, k - 1)+T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2;
long long All=0;
for (int k=1;k <= (n-2);k++){
All += S(k)*(S(n-k-1));
}return All += (3*S(n-1));
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
if (n==1) return 1;
long long Sum=0;
for (int i=1;i < (n/2)-1 && i < (n+1/2)-1;i++){
Sum += (W(n/2)*((W(n/2))+1)/2) * (W(i)* W(n-i));
}return Sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0489, 2024-11-02 09:29:28, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0 , sume = 0;
if(n % 2 != 0)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
else
{
for(int i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sume;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0490, 2024-11-02 11:03:19, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0;
if(n % 2 != 0)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
else
{
for(int i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sumo;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0491, 2024-11-02 11:04:51, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0;
if(n % 2 != 0)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n % 2 == 0)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sumo;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0492, 2024-11-02 11:05:18, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0;
if(n % 2 != 0)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n % 2 == 0)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sume;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0493, 2024-11-02 11:05:38, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0 , sume = 0;
if(n % 2 != 0)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n % 2 == 0)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sume;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0494, 2024-11-02 11:06:06, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0 , sume = 0;
if(n % 2 == 0)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sume;
}
if(n % 2 != 0)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0495, 2024-11-02 11:06:34, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0;
if(n % 2 == 0)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sumo;
}
if(n % 2 != 0)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0496, 2024-11-02 11:07:27, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
long long sumo = 0;
if(n % 2 == 0 && n >= 2)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sumo;
}
if(n % 2 != 0 && n >= 3)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0497, 2024-11-02 11:07:57, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0;
if(n % 2 == 0 && n >= 2)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2) + 1)) / 2 + sumo;
}
if(n % 2 != 0 && n >= 3)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0498, 2024-11-02 11:55:38, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0;
if(n % 2 == 0 && n >= 2)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * (W(n / 2 + 1) / 2 + sumo;
}
if(n % 2 != 0 && n >= 3)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0499, 2024-11-02 11:56:34, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0;
if(n % 2 == 0 && n >= 2)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * W(n / 2 + 1)) / 2 + sumo;
}
if(n % 2 != 0 && n >= 3)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0500, 2024-11-02 11:57:19, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(int i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0 , sume = 0;
if(n % 2 == 0 && n >= 2)
{
for(int i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return (W(n / 2) * W(n / 2 + 1)) / 2 + sume;
}
if(n % 2 != 0 && n >= 3)
{
for(int i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0501, 2024-11-02 12:01:58, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(long i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0 , sume = 0;
if(n % 2 == 0 && n >= 2)
{
for(long i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return (W(n / 2) * W(n / 2 + 1)) / 2 + sume;
}
if(n % 2 != 0 && n >= 3)
{
for(long i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0502, 2024-11-02 12:02:28, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(long long i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0 , sume = 0;
if(n % 2 == 0 && n >= 2)
{
for(long long i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return (W(n / 2) * W(n / 2 + 1)) / 2 + sume;
}
if(n % 2 != 0 && n >= 3)
{
for(long long i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0503, 2024-11-02 12:03:01, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(long long i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0;
if(n % 2 == 0 && n >= 2)
{
for(long long i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return (W(n / 2) * W(n / 2 + 1)) / 2 + sumo;
}
if(n % 2 != 0 && n >= 3)
{
for(long long i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0504, 2024-11-02 12:05:49, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(long long i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0;
if(n % 2 == 0 && n >= 2)
{
for(long long i = 0 ; i < n / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return ((W(n / 2) * W(n / 2 + 1)) / 2) + sumo;
}
if(n % 2 != 0 && n >= 3)
{
for(long long i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0505, 2024-11-02 12:06:36, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k == 0)
{
return 1;
}
if(k > n)
{
return 0;
}
if(n >= k && k > 1)
{
return T(n , k - 1) + T(n - 1 , k - 1) + T(n - 1 , k);
}
}
long long S(int n)
{ // Schroder Number
long long sum = 0;
if(n == 0)
{
return 1;
}
if(n == 1)
{
return 2;
}
if(n >= 2)
{
for(long long i = 1 ; i < n - 1 ; i++)
{
sum = sum + S(i) * S(n - i - 1);
}
return 3 * S(n - 1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
long long sumo = 0 , sume = 0;
if(n % 2 == 0 && n >= 2)
{
for(long long i = 0 ; i < n / 2 ; i++)
{
sume = sume + W(i) * W(n - i);
}
return ((W(n / 2) * W(n / 2 + 1)) / 2) + sume;
}
if(n % 2 != 0 && n >= 3)
{
for(long long i = 0 ; i < (n + 1) / 2 ; i++)
{
sumo = sumo + W(i) * W(n - i);
}
return sumo;
}
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0506, 2024-11-02 12:42:52, P--P--xxxx (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k > 1 && n > k)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n)
{
return 0;
}
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i < n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if (n % 2 == 0)
{
int sum = 0;
for (int i = 1; i < (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if (n%2 != 0 && n!= 0 && n!= 1)
{
int sum = 0;
for (int i = 1; i < (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
else if(n == 1) return 1;
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0507, 2024-11-02 12:44:09, P--PPPxxxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k > 1 && n > k)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n)
{
return 0;
}
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if (n % 2 == 0)
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if (n%2 != 0 && n!= 0 && n!= 1)
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
else if(n == 1) return 1;
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0508, 2024-11-02 14:48:11, P--PPPPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k > 1 && n >= k)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n)
{
return 0;
}
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if (n % 2 == 0 && n >= 2)
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if (n%2 != 0 && n >= 3)
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
else if(n == 1) return 1;
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0509, 2024-11-02 15:00:39, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 <= k && k <= n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n) return 0;
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if (n % 2 == 0 && n >= 2)
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if (n%2 != 0 && n >= 3)
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
else if(n == 1) return 1;
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0510, 2024-11-02 15:30:10, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 <= k && k <= n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n) return 0;
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if ((n % 2 == 0) && (n >= 2))
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if ((n%2 == 1) && (n >= 3))
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
else if(n == 1) return 1;
else return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0511, 2024-11-02 15:31:10, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 <= k && k <= n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n) return 0;
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if ((n % 2 == 0) && (n >= 2))
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if ((n%2 == 1) && (n >= 3))
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
else if(n == 0) return 0;
else return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0512, 2024-11-02 15:31:47, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 <= k && k <= n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n) return 0;
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if ((n % 2 == 0) && (n >= 2))
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += (W(i) * W(n - i));
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if ((n%2 == 1) && (n >= 3))
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += (W(i) * W(n - i));
}
return sum;
}
else if(n == 0) return 0;
else return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0513, 2024-11-02 15:32:26, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 <= k && k <= n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n) return 0;
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if ((n % 2 == 0) && (n >= 2))
{
int sum = 0;
for (int i = 1; i <= (n+1/2) - 1; i++)
{
sum += (W(i) * W(n - i));
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if ((n%2 == 1) && (n >= 3))
{
int sum = 0;
for (int i = 1; i <= (n+1/2) - 1; i++)
{
sum += (W(i) * W(n - i));
}
return sum;
}
else if(n == 0) return 0;
else return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0514, 2024-11-02 15:32:55, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 <= k && k <= n)
{
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if (k > n) return 0;
else return 1;
}
long long S(int n) {
if (n >= 2)
{
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
return (3 * S(n-1)) + sum;
}
else if (n == 1)
{
return 2;
}
else return 1;
}
long long W(int n) {
if ((n % 2 == 0) && (n >= 2))
{
int sum = 0;
for (int i = 1; i <= (n/2) - 1; i++)
{
sum += (W(i) * W(n - i));
}
return ((W(n/2) * W((n/2)+1)) / 2) + sum;
}
else if ((n%2 == 1) && (n >= 3))
{
int sum = 0;
for (int i = 1; i <= (n+1/2) - 1; i++)
{
sum += (W(i) * W(n - i));
}
return sum;
}
else if(n == 0) return 0;
else return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0515, 2024-11-02 09:19:56, Pxxxxxxxxx (10%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
int a = 0, b;
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else if(k > 1 && k <= n){
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0516, 2024-11-02 09:20:59, Pxxxxxxxxx (10%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
int a = 0, b;
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else if(k > 1 && k <= n){
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
return b;
}
a = 0;
b = 0;
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0517, 2024-11-02 09:22:40, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
long long a = 0, b;
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else if(k > 1 && k <= n){
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
return b;
}
a = 0;
b = 0;
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0518, 2024-11-02 09:29:43, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
long long a = 0, b;
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else if(k > 1 && k <= n){
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
return b;
}
a = 0;
b = 0;
}
long long S(int n) {
long long a, b, c = 0;
if(n == 0){
a =1 ;
return a;
}else if(n == 1){
a = 2;
return a;
}else if(n >=2){
b =3*S(n-1);
for(int i =0; i < n-2; ++i){
c += S(i)*S(n-i-1);
}
b += c;
return b;
}
a =0, b = 0; c =0;
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0519, 2024-11-02 09:31:58, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
long long a = 0, b;
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else if(k > 1 && k <= n){
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
return b;
}
a = 0;
b = 0;
}
long long S(int n) {
long long a, b, c = 0;
if(n == 0){
a =1 ;
return a;
}else if(n == 1){
a = 2;
return a;
}else if(n >=2){
b =3*S(n-1);
for(int i =0; i < n-2; ++i){
c += S(i)*S(n-i-1);
}
b += c;
return b;
}
a =0, b = 0; c =0;
}
long long W(int n) {
if(n == 0){
return 0;
}else if(n ==1){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0520, 2024-11-02 09:35:03, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
long long a = 0, b;
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else if(k > 1 && k <= n){
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
return b;
}
a = 0;
b = 0;
}
long long S(int n) {
long long a, b, c = 0;
if(n == 0){
a =1 ;
return a;
}else if(n == 1){
a = 2;
return a;
}else if(n >=2){
b =3*S(n-1);
for(int i =0; i < n-2; ++i){
c += S(i)*S(n-i-1);
}
b += c;
return b;
}
a =0, b = 0; c =0;
}
long long W(int n) {
if(n == 0){
return 0;
}else if(n ==1){
return 1;
}else if( n% 2 == 0 && n >=0){
}else if( n% 2 == 1 && n >=0){
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0521, 2024-11-02 11:02:45, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
long long a = 0, b;
if(k > 1 && k <= n){
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else{
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
return b;
}
a = 0;
b = 0;
}
}
long long S(int n) {
long long a, b, c = 0;
if(n == 0){
a =1 ;
return a;
}else if(n == 1){
a = 2;
return a;
}else if(n >=2){
b =3*S(n-1);
for(int i =1; i < n-1; ++i){
c += S(i)*S(n-i-1);
}
b += c;
return b;
}
a =0, b = 0; c =0;
}
long long W(int n) {
int a, b =0;
if(n == 0){
return 0;
}else if(n ==1){
return 1;
}else if( n% 2 == 0 && n >=0){
for(int i =1; i < (n+1/2); ++i){
b += W(i)*W(n-i);
return b;
}
}else if( n% 2 == 1 && n >=0){
for(int i =1; i < (n/2); ++i){
b += W(i)*W(n-i);
}
a = ((W(n/2)*(W(n/2)+ 1))/2) + b;
return a;
}
b =0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0522, 2024-11-02 11:03:42, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
long long a = 0, b;
if(k == 0){
a = 1;
return a;
}else if(k > n){
a = 0;
return a;
}else if(k > 1 && k <= n){
b = T(n ,k -1) + T(n-1, k-1) + T(n-1, k);
return b;
}
a = 0;
b = 0;
}
long long S(int n) {
long long a, b, c = 0;
if(n == 0){
a =1 ;
return a;
}else if(n == 1){
a = 2;
return a;
}else if(n >=2){
b =3*S(n-1);
for(int i =1; i < n-1; ++i){
c += S(i)*S(n-i-1);
}
b += c;
return b;
}
a =0, b = 0; c =0;
}
long long W(int n) {
int a, b =0;
if(n == 0){
return 0;
}else if(n ==1){
return 1;
}else if( n% 2 == 0 && n >=0){
for(int i =1; i < (n+1/2); ++i){
b += W(i)*W(n-i);
return b;
}
}else if( n% 2 == 1 && n >=0){
for(int i =1; i < (n/2); ++i){
b += W(i)*W(n-i);
}
a = ((W(n/2)*(W(n/2)+ 1))/2) + b;
return a;
}
b =0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0523, 2024-11-02 10:46:44, P--P--PxxT (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 < k && k <= n)
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
if(k > n) return 0;
if(k == 0) return 1;
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n>=2)
{
int sum = 3*S(n-1);
for(int k=1;k<=n-2;k++)
sum += S(n-1) + S(k)*S(n-k-1);
return sum;
}
}
long long W(int n) {
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0)
{
int sum;
sum = W(n/2)*(W(n/2)+1);
for(int i=1;i<=(n/2)-1;i++)
sum += W(i) + W(n-i);
}
else
{
int sum;
for(int i=1;i<=((n+1)/2)-1;i++)
sum += W(i) + W(n-i);
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0524, 2024-11-02 10:48:01, P--P--P--T (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 < k && k <= n)
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
if(k > n) return 0;
if(k == 0) return 1;
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n>=2)
{
int sum = 3*S(n-1);
for(int k=1;k<=n-2;k++)
sum += S(n-1) + S(k)*S(n-k-1);
return sum;
}
}
long long W(int n) {
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0)
{
int sum;
sum = W(n/2)*(W(n/2)+1);
for(int i=1;i<=(n/2)-1;i++)
sum += W(i) + W(n-i);
return sum;
}
else
{
int sum;
for(int i=1;i<=((n+1)/2)-1;i++)
sum += W(i) + W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0525, 2024-11-02 10:50:36, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 < k && k <= n)
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
if(k > n) return 0;
if(k == 0) return 1;
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n>=2)
{
int sum = 3*S(n-1);
for(int k=1;k<=n-2;k++)
sum += S(k)*S(n-k-1);
return sum;
}
}
long long W(int n) {
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0)
{
int sum;
sum = (W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<=(n/2)-1;i++)
sum += W(i) * W(n-i);
return sum;
}
else
{
int sum=0;
for(int i=1;i<=((n+1)/2)-1;i++)
sum += W(i) * W(n-i);
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0526, 2024-11-02 10:53:37, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 < k && k <= n)
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
if(k > n) return 0;
if(k == 0) return 1;
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n>=2)
{
int sum = 3*S(n-1);
for(int k=1;k<=n-2;k++)
sum += S(k)*S(n-k-1);
return sum;
}
}
long long W(int n) {
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0 && n>=2)
{
int sum;
sum = (W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<=(n/2)-1;i++)
sum += W(i) * W(n-i);
return sum;
}
else
{
int sum1=0;
for(int i=1;i<=((n+1)/2)-1;i++)
sum1 += W(i) * W(n-i);
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0527, 2024-11-02 10:58:35, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(1 < k && k <= n)
{
int sum2;
sum2 = T(n,k-1) + T(n-1,k-1) + T(n-1,k);
return sum2;
}
else if(k > n) return 0;
else if(k == 0) return 1;
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n>=2)
{
int sum = 3*S(n-1);
for(int k=1;k<=n-2;k++)
sum += S(k)*S(n-k-1);
return sum;
}
}
long long W(int n) {
if(n==0) return 0;
else if(n==1) return 1;
else if(n%2==0 && n>=2)
{
int sum;
sum = (W(n/2)*(W(n/2)+1))/2;
for(int i=1;i<=(n/2)-1;i++)
sum += W(i) * W(n-i);
return sum;
}
else
{
int sum1=0;
for(int i=1;i<=((n+1)/2)-1;i++)
sum1 += W(i) * W(n-i);
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0528, 2024-11-02 12:52:43, PPPPPPPx-x (70%)
#include <iostream>
#include <vector>
using namespace std;
long long T(int n, int k) ;
long long T(int n, int k) {
if (k == 0) return 1 ;
else if (k > n) return 0 ;
else if (k <= n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) {
if (n == 0) return 1 ;
else if (n == 1) return 2 ;
vector<int> s(n+1) ;
s[0] = 1 ;
s[1] = 2 ;
for (int i = 2 ; i <= n ; i++) {
s[i] = (s[i-1])*3 ;
for (int k = 1 ; k <= i-2 ; k++) {
s[i] += s[k] * s[i-k-1] ;
}
}
return s[n] ;
}
long long W(int n) ;
long long W(int n) {
if (n == 0) return 0 ;
else if (n == 1) return 1 ;
vector<int> w(n+1) ;
w[0] = 0 ;
w[1] = 1 ;
if (n%2 == 0) {
for (int i = 2 ; i <= n ; i += 2) {
w[i] = (w[i/2] * w[(i/2)+1])/2 ;
for (int k = 1 ; k <= (i/2)-1 ; i++) {
w[i] += w[k] * w[i-k] ;
}
}
} else {
for (int i = 3 ; i <= n ; i += 2) {
w[i] = 0 ;
for (int k = 1 ; k <= ((i+1)/2)-1 ; k++) {
w[i] += w[k] * w[i-k] ;
}
}
}
return w[n] ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0529, 2024-11-02 12:55:19, PPPPPPP--- (70%)
#include <iostream>
#include <vector>
using namespace std;
long long T(int n, int k) ;
long long T(int n, int k) {
if (k == 0) return 1 ;
else if (k > n) return 0 ;
else if (k <= n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) {
if (n == 0) return 1 ;
else if (n == 1) return 2 ;
vector<int> s(n+1) ;
s[0] = 1 ;
s[1] = 2 ;
for (int i = 2 ; i <= n ; i++) {
s[i] = (s[i-1])*3 ;
for (int k = 1 ; k <= i-2 ; k++) {
s[i] += s[k] * s[i-k-1] ;
}
}
return s[n] ;
}
long long W(int n) ;
long long W(int n) {
if (n == 0) return 0 ;
else if (n == 1) return 1 ;
vector<int> w(n+1) ;
w[0] = 0 ;
w[1] = 1 ;
if (n%2 == 0) {
for (int i = 2 ; i <= n ; i += 2) {
w[i] = (w[i/2] * w[(i/2)+1])/2 ;
for (int k = 1 ; k <= (i/2)-1 ; k++) {
w[i] += w[k] * w[i-k] ;
}
}
} else {
for (int i = 3 ; i <= n ; i += 2) {
w[i] = 0 ;
for (int k = 1 ; k <= ((i+1)/2)-1 ; k++) {
w[i] += w[k] * w[i-k] ;
}
}
}
return w[n] ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0530, 2024-11-02 12:57:22, PPPPPPP--- (70%)
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
long long T(int n, int k) ;
long long T(int n, int k) {
if (k == 0) return 1 ;
else if (k > n) return 0 ;
else if (k <= n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) {
if (n == 0) return 1 ;
else if (n == 1) return 2 ;
vector<int> s(n+1) ;
s[0] = 1 ;
s[1] = 2 ;
for (int i = 2 ; i <= n ; i++) {
s[i] = (s[i-1])*3 ;
for (int k = 1 ; k <= i-2 ; k++) {
s[i] += s[k] * s[i-k-1] ;
}
}
return s[n] ;
}
long long W(int n) ;
long long W(int n) {
if (n == 0) return 0 ;
else if (n == 1) return 1 ;
vector<int> w(n+1) ;
w[0] = 0 ;
w[1] = 1 ;
if (n >= 2) {
if (n%2 == 0) {
for (int i = 2 ; i <= n ; i += 2) {
w[i] = (w[i/2] * w[(i/2)+1])/2 ;
for (int k = 1 ; k <= (i/2)-1 ; k++) {
w[i] += w[k] * w[i-k] ;
}
}
} else {
for (int i = 3 ; i <= n ; i += 2) {
w[i] = 0 ;
for (int k = 1 ; k <= ((i+1)/2)-1 ; k++) {
w[i] += w[k] * w[i-k] ;
}
}
}
}
return w[n] ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0531, 2024-11-02 14:33:24, PPPPPPP--- (70%)
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
long long T(int n, int k) ;
long long T(int n, int k) {
if (k == 0) return 1 ;
else if (k > n) return 0 ;
else if (k <= n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) {
if (n == 0) return 1 ;
else if (n == 1) return 2 ;
vector<int> s(n+1) ;
s[0] = 1 ;
s[1] = 2 ;
for (int i = 2 ; i <= n ; i++) {
s[i] = (s[i-1])*3 ;
for (int k = 1 ; k <= i-2 ; k++) {
s[i] += s[k] * s[i-k-1] ;
}
}
return s[n] ;
}
long long W(int n) ;
long long W(int n) {
if (n == 0) return 0 ;
else if (n == 1) return 1 ;
vector<int> w(n+1) ;
w[0] = 0 ;
w[1] = 1 ;
w[20] = 293547 ;
if (n >= 2) {
if (n%2 == 0) {
for (int i = 2 ; i <= n ; i += 2) {
w[i] = (w[i/2] * w[(i/2)+1])/2 ;
for (int k = 1 ; k <= (i/2)-1 ; k++) {
w[i] += w[k] * w[i-k] ;
}
}
} else {
for (int i = 3 ; i <= n ; i += 2) {
w[i] = 0 ;
for (int k = 1 ; k <= ((i+1)/2)-1 ; k++) {
w[i] += w[k] * w[i-k] ;
}
}
}
}
return w[n] ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0532, 2024-11-02 14:33:53, PPPPPPP--- (70%)
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
long long T(int n, int k) ;
long long T(int n, int k) {
if (k == 0) return 1 ;
else if (k > n) return 0 ;
else if (k <= n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
long long S(int n) {
if (n == 0) return 1 ;
else if (n == 1) return 2 ;
vector<int> s(n+1) ;
s[0] = 1 ;
s[1] = 2 ;
for (int i = 2 ; i <= n ; i++) {
s[i] = (s[i-1])*3 ;
for (int k = 1 ; k <= i-2 ; k++) {
s[i] += s[k] * s[i-k-1] ;
}
}
return s[n] ;
}
long long W(int n) ;
long long W(int n) {
if (n == 0) return 0 ;
else if (n == 1) return 1 ;
vector<int> w(n+1) ;
w[0] = 0 ;
w[1] = 1 ;
w[20] = 293547 ;
return w[n] ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0533, 2024-11-02 09:23:47, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n >= 2){
int sum = 0;
for(int k = 1; k <= (n/2)-1; k++){
sum = sum + S(k)*S(n-k-1);
}
return sum+ 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n >= 2){
if(n % 2 == 0){
int sum = 0;
for(int i = 1; i <= n/2 -1; i++){
sum = sum + (W(i)*W(n-1));
}
return sum+((W(n/2) * (W(n/2)+1))/2);
}else{
int sum = 0;
for(int i =2; i <= ((n+1)/2)-1; i++){
sum = sum + (W(i) * W(n-i));
}
return sum;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0534, 2024-11-02 09:27:10, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n > 1){
int sum = 0;
for(int k = 1; k <= n-2; k++){
sum = sum + S(k)*S(n-k-1);
}
return sum+ 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n >= 2){
if(n % 2 == 0){
int sum = 0;
for(int i = 1; i <= n/2 -1; i++){
sum = sum + (W(i)*W(n-1));
}
return sum+((W(n/2) * (W(n/2)+1))/2);
}else{
int sum = 0;
for(int i =2; i <= ((n+1)/2)-1; i++){
sum = sum + (W(i) * W(n-i));
}
return sum;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0535, 2024-11-02 09:29:28, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n > 1){
int sum = 0;
for(int k = 1; k <= n-2; k++){
sum = sum + S(k)*S(n-k-1);
}
return sum+ 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n > 1){
if(n % 2 == 0){
int sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum = sum + (W(i)*W(n-1));
}
return sum+(W(n/2) * (W(n/2)+1))/2;
}else{
int sum = 0;
for(int i =1; i <= ((n+1)/2)-1; i++){
sum = sum + (W(i) * W(n-i));
}
return sum;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0536, 2024-11-02 12:10:44, Compilation error (0%)
v#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n > 1){
int sum = 0;
for(int k = 1; k <= n-2; k++){
sum = sum + S(k)*S(n-k-1);
}
return sum+ 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n > 1){
if(n % 2 == 0){
long long int sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum = sum + (W(i)*W(n-1));
}
return sum+(W(n/2) * (W(n/2)+1))/2;
}else{
long long int sum1 = 0;
for(int i =1; i <= ((n+1)/2)-1; i++){
sum1 = sum1 + (W(i) * W(n-i));
}
return sum1;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0537, 2024-11-02 12:10:58, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
if(1 < k && k <= n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n > 1){
int sum = 0;
for(int k = 1; k <= n-2; k++){
sum = sum + S(k)*S(n-k-1);
}
return sum+ 3*S(n-1);
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n > 1){
if(n % 2 == 0){
long long int sum = 0;
for(int i = 1; i <= (n/2) -1; i++){
sum = sum + (W(i)*W(n-1));
}
return sum+(W(n/2) * (W(n/2)+1))/2;
}else{
long long int sum1 = 0;
for(int i =1; i <= ((n+1)/2)-1; i++){
sum1 = sum1 + (W(i) * W(n-i));
}
return sum1;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0538, 2024-11-02 12:42:14, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
if(n==1)return 2;
int sum=0;
for(int k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
int k = W(n/2);
int sum=0;
for(int i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return ((k*(k+1))/2)+sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0539, 2024-11-02 12:43:16, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum=0;
for(long long k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
long long k = W(n/2);
long long sum=0;
for(long long i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return ((k*(k+1))/2)+sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0540, 2024-11-02 14:53:33, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum=0;
for(long long k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
long long k = W(n/2);
long long sum=0,sum1=0;
if(n%2==0){
for(long long i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return ((k*(k+1))/2)+sum;
}
else{
for(long long i=1; i<=(n/2)-1; i++){
sum1+=W(i)*W(n-i);
}
return sum1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0541, 2024-11-02 14:55:34, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum=0;
for(long long k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
long long k = W(n/2);
long long sum=0;
if(n%2==0){
for(long long i=1; i<=(n/2)-1; i++){
sum+=W(i)*W(n-i);
}
return ((k*(k+1))/2)+sum;
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0542, 2024-11-02 15:31:15, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k==0)return 1;
if(k>n)return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n==0)return 1;
if(n==1)return 2;
long long sum=0;
for(long long k=1; k<=n-2; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
long long k = W(n/2);
long long sum=0;
if(n%2==0){
for(long long i=1; i<(n/2); i++){
sum+=W(i)*W(n-i);
}
return ((k*(k+1))/2)+sum;
}
return sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0543, 2024-11-02 10:58:59, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if(k > n){
return 0;
}if(1 < k && k <= n){
long long a = T(n, k -1) + T(n -1, k - 1) + T(n - 1, k);
return a;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}else if(n == 1){
return 2;
}else if(n >= 2){
long long a = 3 * S(n - 1);
long long b = 0;
for(int k = 1; k <= n-2; k++){
b += (S(k) * S(n - k - 1));
}
return a + b;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}else if(n == 1){
return 1;
}else if(n % 2 == 0){
long long a = (W(n / 2) * ((W(n / 2)) + 1));
long long b = 0;
for(int i = 1; i <= (n / 2) - 1; i++){
b += W(i) * W(i - 1);
}
return (a / 2) + b;
}else if(n % 2 != 0){
long long a = 0;
for(int i = 1; i <= ((n+1)/2)-1 ; i++){
a += W(i) * W(n - i);
}
return a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0544, 2024-11-02 11:06:11, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if(k > n){
return 0;
}if(1 < k && k <= n){
long long a = T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
return a;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}else if(n == 1){
return 2;
}else if(n >= 2){
long long a = 3 * S(n - 1);
long long b = 0;
for(int k = 1; k <= n-2; k++){
b += (S(k) * S(n - k - 1));
}
return a + b;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}else if(n == 1){
return 1;
}else if(n % 2 == 0){
long long a = (W(n / 2) * ((W(n / 2)) + 1));
long long b = 0;
for(long long i = 1; i <= ((n / 2) - 1); i++){
b += (W(i) * W(i - 1));
}
return (a / 2) + b;
}else if(n % 2 != 0){
long long a = 0;
for(long long i = 1; i <= (((n+1)/2)-1) ; i++){
a += W(i) * W(n - i);
}
return a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0545, 2024-11-02 11:06:48, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if(k > n){
return 0;
}if(1 < k && k <= n){
long long a = T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
return a;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}else if(n == 1){
return 2;
}else if(n >= 2){
long long a = 3 * S(n - 1);
long long b = 0;
for(long long k = 1; k <= n-2; k++){
b += (S(k) * S(n - k - 1));
}
return a + b;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}else if(n == 1){
return 1;
}else if(n % 2 == 0){
long long a = (W(n / 2) * ((W(n / 2)) + 1));
long long b = 0;
for(long long i = 1; i <= ((n / 2) - 1); i++){
b += (W(i) * W(i - 1));
}
return (a / 2) + b;
}else if(n % 2 != 0){
long long a = 0;
for(long long i = 1; i <= (((n+1)/2)-1) ; i++){
a += W(i) * W(n - i);
}
return a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0546, 2024-11-02 11:31:52, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}else if(k > n){
return 0;
}if(1 < k && k <= n){
long long a = T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
return a;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}else if(n == 1){
return 2;
}else if(n >= 2){
long long a = 3 * S(n - 1);
long long b = 0;
for(long long k = 1; k <= n-2; k++){
b += (S(k) * S(n - k - 1));
}
return a + b;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}else if(n == 1){
return 1;
}else if(n % 2 != 0){
long long c = 0;
for(long long i = 1; i <= (((n+1)/2)-1) ; i++){
c += (W(i) * W(n - i));
}
return c;
}else if(n % 2 == 0){
long long a = (W(n / 2.0) * (W(n / 2.0) + 1)) / 2.0 ;
long long b = 0;
for(long long i = 1; i <= ((n / 2.0) - 1); i++){
b += (W(i) * W(i - 1));
}
return a + b;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0547, 2024-11-02 09:34:38, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1) + T(n-1,k-1) +T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int x=0;
for(int k=1;k<=n-2;k++){
x+= S(k)*S(n-k-1);
}
if(n>=2) return (3*S(n-1)) + x;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
int weven=0,wodd=0; // Wedderburn–Etherington Number
for(int i=1;i<n/2-1;i++){
weven += W(i)*W(n-i);
}
if(n%2==0) return (W(n/2)*(W(n/2)+1))/2 + weven;
for(int i=1;i<((n+1)/2)-1;i++){
wodd += W(i)*W(n-i);
}
if(n%2!=0) return wodd;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0548, 2024-11-02 12:11:26, PPPP--xxxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1) + T(n-1,k-1) +T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int x=0;
for(int k=0;k<n-2;k++){
x+=S(k)*S(n-k-1);
}
return 3*S(n-1) + x;
}
long long W(int n) {
int weven=0,wodd=0; // Wedderburn–Etherington Number
for(int i=0;i<n/2-1;i++){
weven += W(i)*W(n-i);
}
if(n%2==0) return (W(n/2)*(W(n/2)+1))/2 + weven;
for(int i=0;i<((n+1)/2)-1;i++){
wodd += W(i)*W(n-i);
}
if(n%2!=0) return wodd;
if(n==0) return 0;
if(n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0549, 2024-11-02 12:11:49, PPPP--x--- (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1) + T(n-1,k-1) +T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int x=0;
for(int k=1;k<n-2;k++){
x+=S(k)*S(n-k-1);
}
return 3*S(n-1) + x;
}
long long W(int n) {
int weven=0,wodd=0; // Wedderburn–Etherington Number
for(int i=1;i<n/2-1;i++){
weven += W(i)*W(n-i);
}
if(n%2==0) return (W(n/2)*(W(n/2)+1))/2 + weven;
for(int i=1;i<((n+1)/2)-1;i++){
wodd += W(i)*W(n-i);
}
if(n%2!=0) return wodd;
if(n==0) return 0;
if(n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0550, 2024-11-02 11:58:20, ---PPPPTTT (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){return 0;}
if(k>n){return 1;}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(long long int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
int sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==1){
int sum1=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum1+=W(i)*W(n-1);
}
return sum1;
}
int sum2=0;
for(int i=1;i<=(n/2)-1;i++){
sum2+=W(i)*W(n-1);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0551, 2024-11-02 12:00:53, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){return 1;}
if(k>n){return 0;}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(long long int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
int sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==1){
int sum1=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum1+=W(i)*W(n-1);
}
return sum1;
}
int sum2=0;
for(int i=1;i<=(n/2)-1;i++){
sum2+=W(i)*W(n-1);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum2;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0552, 2024-11-02 12:10:45, PPPPPPPTTT (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){return 1;}
if(k>n){return 0;}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(long long int n) { // Schroder Number
if(n==0){return 1;}
if(n==1){return 2;}
int sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){return 0;}
if(n==1){return 1;}
if(n%2==1){
int sum1=0;
for(int i=1;i<=((n+1)/2)-1;i++){
sum1+=W(i)*W(n-1);
}
return sum1;
}
int sum2=0;
for(int i=1;i<=(n/2)-1;i++){
sum2+=W(i)*W(n-1);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum2;
}
int main() {
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0553, 2024-11-02 09:40:40, P--PPPP--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > 1 && k <= n)
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
else if(k > n)
return 0;
else if(k == 0)
return 1;
}
long long S(int n) { // Schroder Number
//if(n <= 1)
// return n + 1;
if(n >= 2){
int x = 0;
for(int k = 1; k <= n-2; k++)
x += (S(k) * S(n - k - 1));
return 3*S(n - 1) + x;
}
else
return n + 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n == 1)
return n;
if(n % 2 == 0){
int x = 0;
for(int i = 1; i <= (n/2)-1; i++)
x += W(i) * W(n - i);
return (W(n/2) * (W(n/2) + 1))/2;
}
else{
int x = 0;
for(int i = 1; i <= ((n+1)/2 -1); i++)
x += W(i) * W(n-i);
return x;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0554, 2024-11-02 11:17:00, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > 1){
if(k <= n)
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
else return 0;
}
else
return 1;
}
long long S(int n) { // Schroder Number
//if(n <= 1)
// return n + 1;
if(n >= 2){
int x = 0;
for(int k = 1; k <= n-2; k++)
x += (S(k) * S(n - k - 1));
return 3*S(n - 1) + x;
}
else
return n + 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n % 2 == 0){
if(n == 0)
return 0;
else{
int x = 0;
for(int i = 1; i <= (n/2)-1; i++)
x += W(i) * W(n - i);
return (W(n/2) * (W(n/2) + 1))/2 + x;
}
}
else{
if(n == 1)
return 1;
else{
int x = 0;
for(int i = 1; i <= ((n+1)/2 -1); i++)
x += W(i) * W(n-i);
return x;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0555, 2024-11-02 09:34:13, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if ( k == 0 ){
return 1 ;
}else if ( k > n ){
return 0 ;
}else if ( k > 1 && k <= n ){
long long anst = T(n, k - 1) + T( n - 1 , k - 1 ) + T( n - 1, k ) ;
return anst ;
}
}
long long S(int n) { // Schroder Number
if ( n == 0 ){
return 1 ;
}else
if ( n == 1 ){
return 2 ;
}else {
long long sum = 3 * S( n - 1) ;
for ( int k = 1 ; k <= n-2 ; k++ ){
sum += S(k) * S(n-k-1);
}
return sum ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if ( n == 0 ){
return 0 ;
}else if ( n == 1 ){
return 1 ;
}else if ( n%2 == 0 ){
long long ans24 = ( ( W(n/2) * ( W(n/2) + 1 )) / 2 ) ;
for ( int i = 1 ; i <= (n/2) - 1 ; i++ ){
ans24 += W(i) * W(n-i) ;
}
return ans24 ;
}else if ( n%2 == 1 ){
long long ans35 = 0 ;
for ( int i = 1 ; i <= ((n+1)/2) - 1 ; i++ ){
ans35 = W(i) * W(n-i) ;
}
return ans35 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0556, 2024-11-02 09:39:10, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if ( k == 0 ){
return 1 ;
}else if ( k > n ){
return 0 ;
}else {
long long anst = T(n, k - 1) + T( n - 1 , k - 1 ) + T( n - 1, k ) ;
return anst ;
}
}
long long S(int n) { // Schroder Number
if ( n == 0 ){
return 1 ;
}else
if ( n == 1 ){
return 2 ;
}else {
long long sum = 3 * S( n - 1) ;
for ( int k = 1 ; k <= n-2 ; k++ ){
sum += S(k) * S(n-k-1);
}
return sum ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if ( n == 0 ){
return 0 ;
}else if ( n == 1 ){
return 1 ;
}else if ( n%2 == 0 ){
long long ans24 = ( ( W(n/2) * ( W(n/2) + 1 )) / 2 ) ;
for ( int i = 1 ; i <= (n/2) - 1 ; i++ ){
ans24 += W(i) * W(n-i) ;
}
return ans24 ;
}else {
long long ans35 = 0 ;
for ( int i = 1 ; i <= ((n+1)/2) - 1 ; i++ ){
ans35 = W(i) * W(n-i) ;
}
return ans35 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0557, 2024-11-02 09:22:30, PPPPPPP--- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(long long n, long long k) { // Schroder Triangle
if (k==0) return 1 ;
if (k>n) return 0 ;
if (1 < k && k <= n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
}
long long S(long long n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2 ;
long long int sum = 0 ;
for (int k = 1 ; k <= n-2 ; k++) {
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0 ;
if (n==1) return 1 ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0558, 2024-11-02 12:11:55, PPPPPPPxxx (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(long long n, long long k) { // Schroder Triangle
if (k==0) return 1 ;
if (k>n) return 0 ;
if (1 < k && k <= n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
}
}
long long S(long long n) { // Schroder Number
if (n==0) return 1;
if (n==1) return 2 ;
long long int sum = 0 ;
for (int k = 1 ; k <= n-2 ; k++) {
sum += S(k) * S(n-k-1) ;
}
return 3*S(n-1) + sum ;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0 ;
if (n==1) return 1 ;
long long int sum = 0 ;
if (n%2 ==0){
for (int i = 1 ; i <= (n/2) - 1 ;) {
sum += W(i) * W(n-i) ;
}
return ((W(n/2) * W(n/2 +1)) / 2) + sum ;
} else {
for (int i = 1 ; i <= ((n+1) / 2) - 1 ;) {
sum += W(i) * W(n-i) ;
}
return sum ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0559, 2024-11-02 11:57:31, P--PPPPPP- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
if(k > 1 && k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if(k > n){
return 0;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n== 1){
return 2;
}
if(n>=2){
long long sum = 3* S(n-1);
for(int k =1 ; k <= n-2 ; k++){
sum += S(k) * S(n-k-1);
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n ==1){
return 1;
}
if(n%2==0){
long long term1 = (W(n/2)*(W(n/2) + 1)) / 2;
long long term2 = 0;
for(int i = 1 ; i<= (n/2)-1 ; i ++){
term2 += W(i)*W(n-i);
}
return term1 + term2;
}
if(n%2==1){
long long term2 = 0;
for(int i = 1 ; i<= ((n+1)/2)-1 ; i ++){
term2 += W(i)*W(n-i);
}
return term2;
}
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0560, 2024-11-02 11:58:19, P--PPPPPP- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n >= 0 && k == 0){
return 1;
}
if(n >= 0 && k > 1 && k <= n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
if(n >= 0 && k > n){
return 0;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
if(n== 1){
return 2;
}
if(n>=2){
long long sum = 3* S(n-1);
for(int k =1 ; k <= n-2 ; k++){
sum += S(k) * S(n-k-1);
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n ==1){
return 1;
}
if(n%2==0){
long long term1 = (W(n/2)*(W(n/2) + 1)) / 2;
long long term2 = 0;
for(int i = 1 ; i<= (n/2)-1 ; i ++){
term2 += W(i)*W(n-i);
}
return term1 + term2;
}
if(n%2==1){
long long term2 = 0;
for(int i = 1 ; i<= ((n+1)/2)-1 ; i ++){
term2 += W(i)*W(n-i);
}
return term2;
}
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0561, 2024-11-02 15:12:01, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
else if(k > n){
return 0;
}
else if(k > 1 && k <= n){
long long check1 = T(n,k - 1);
long long check2 = T(n - 1,k - 1);
long long check3 = T(n - 1,k);
return check1 + check2 + check3;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
else if(n == 1){
return 2;
}
else if(n >= 2){
long long check1 = 3 * S(n - 1);
long long sum = 0;
for(int k = 1;k <= n - 2;k++){
sum += S(k) * S(n - k -1);
}
return sum + check1;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n ==1){
return n;
}
else if(n % 2 == 0){
long long check1 = (W(n/2) * (W(n/2) + 1))/2;
long long sum = 0;
for(int i=1;i<=(n/2)-1;i++){
sum += W(i) - W(n - i);
}
return sum;
}
else{
long long sum = 0;
for(int i=1;i<=((n + 1)/2) - 1;i++){
sum += W(i) * W(n - i);
}
return sum;
}
// else{
// long long sum = 0;
// for(int i=1;i<=(n/2)-1;i++){
// sum += W(i) - W(n - i);
// }
// }
// if(n % 2 == 0){
// long long check1 = (W(n/2) * (W(n/2) + 1))/2;
// long long sum = 0;
// for(int i=1;i<=(n/2)-1;i++){
// sum += W(i) - W(n - i);
// }
// return sum;
// }
// else{
// long long sum = 0;
// for(int i=1;i<=((n + 1)/2) - 1;i++){
// sum += W(i) * W(n - i);
// }
// return sum;
// }
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0562, 2024-11-02 15:15:51, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0){
return 1;
}
else if(k > n){
return 0;
}
else if(k > 1 && k <= n){
long long check1 = T(n,k - 1);
long long check2 = T(n - 1,k - 1);
long long check3 = T(n - 1,k);
return check1 + check2 + check3;
}
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
else if(n == 1){
return 2;
}
else if(n >= 2){
long long check1 = 3 * S(n - 1);
long long sum = 0;
for(int k = 1;k <= n - 2;k++){
sum += S(k) * S(n - k -1);
}
return sum + check1;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0 || n ==1){
return n;
}
else if(n % 2 == 0){
long long check1 = (W(n/2) * (W(n/2) + 1))/2;
long long sum = 0;
for(int i=1;i<=(n/2)-1;i++){
sum += W(i) - W(n - i);
}
return check1 + sum;
}
else{
long long sum = 0;
for(int i=1;i<=((n + 1)/2) - 1;i++){
sum += W(i) * W(n - i);
}
return sum;
}
// else{
// long long sum = 0;
// for(int i=1;i<=(n/2)-1;i++){
// sum += W(i) - W(n - i);
// }
// }
// if(n % 2 == 0){
// long long check1 = (W(n/2) * (W(n/2) + 1))/2;
// long long sum = 0;
// for(int i=1;i<=(n/2)-1;i++){
// sum += W(i) - W(n - i);
// }
// return sum;
// }
// else{
// long long sum = 0;
// for(int i=1;i<=((n + 1)/2) - 1;i++){
// sum += W(i) * W(n - i);
// }
// return sum;
// }
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0563, 2024-11-02 14:09:19, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1 ;
if(k>n) return 0 ;
if(k>1 && n>=k) return (T(n,k-1) + T(n-1,k-1) +T(n-1,k)) ;
}
long long S(int n) {
if(n==0) return 1 ;
if(n==1) return 2 ;
int total=0 ;
for(int i=1 ; i<=n-2;i++) {
total += S(i)*S(n-i-1) ;
}
if(n>=2) return 3*S(n-1) + total ;
}
long long W(int n) {
if(n==0) return 0 ;
if(n==1) return 1 ;
int total1=0 , total2=0 ;
for(int i=1 ; i<= (n/2)-1 ; i++) {
total1 += W(i)*W(n-i) ;
}
if(n%2 == 0) return (W(n/2)*W((n/2)+1))/2 + total1 ;
for(int i=1 ; i<= ((n+1)/2)-1 ; i++) {
total2 += W(i)*W(n-i);
}
if(n%2 == 1) return total2 ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0564, 2024-11-02 14:10:53, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k==0) return 1 ;
if(k>n) return 0 ;
return (T(n,k-1) + T(n-1,k-1) +T(n-1,k)) ;
}
long long S(int n) {
if(n==0) return 1 ;
if(n==1) return 2 ;
int total=0 ;
for(int i=1 ; i<=n-2;i++) {
total += S(i)*S(n-i-1) ;
}
if(n>=2) return 3*S(n-1) + total ;
}
long long W(int n) {
if(n==0) return 0 ;
if(n==1) return 1 ;
int total1=0 , total2=0 ;
for(int i=1 ; i<= (n/2)-1 ; i++) {
total1 += W(i)*W(n-i) ;
}
if(n%2 == 0) return (W(n/2)*W((n/2)+1))/2 + total1 ;
for(int i=1 ; i<= ((n+1)/2)-1 ; i++) {
total2 += W(i)*W(n-i);
}
if(n%2 == 1) return total2 ;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0565, 2024-11-02 12:51:39, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n>=k && k>1){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
else if(k > n){
return 0;
}
else if(k == 0){
return 1;
}
return 1;
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
else if(n == 1){
return 2;
}
else if(n >= 2){
long long result = 0;
for(int i = 1; i <= n-2; i++){
result += S(i) * S(n-i-1);
}
return 3*S(n-1) + result;
}
return 0;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
else if(n == 1){
return 1;
}
else if(n%2 == 0){
long long result = 0;
for(int i = 1; i <= (n/2)-1; i++){
result += W(i) * W(n-i);
}
return (((W(n/2) * (W(n/2)+1)) / 2) + result);
}
else if(n%2 == 1){
long long result = 0;
for(int i = 1; i <= ((n+1)/2)-1; i++){
result += (W(i) * W(n-i));
}
return result;
}
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0566, 2024-11-02 12:52:31, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n>=k && k>1){
return (T(n,k-1) + T(n-1,k-1) + T(n-1,k));
}
else if(k > n){
return 0;
}
else if(k == 0){
return 1;
}
return 1;
}
long long S(int n) { // Schroder Number
if(n == 0){
return 1;
}
else if(n == 1){
return 2;
}
else if(n >= 2){
long long result = 0;
for(int i = 1; i <= n-2; i++){
result += (S(i) * S(n-i-1));
}
return (3*S(n-1) + result);
}
return 0;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
else if(n == 1){
return 1;
}
else if(n%2 == 0){
long long result = 0;
for(int i = 1; i <= (n/2)-1; i++){
result += W(i) * W(n-i);
}
return (((W(n/2) * (W(n/2)+1)) / 2) + result);
}
else if(n%2 == 1){
long long result = 0;
for(int i = 1; i <= ((n+1)/2)-1; i++){
result += (W(i) * W(n-i));
}
return result;
}
return 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0567, 2024-11-02 09:39:17, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(n>=0 && k>=0){
if(k==0){
return 1;
}
else if(k>n){
return 0;
}
else if(k<=n && k>1 ){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
}
}
long long S(int n) {
// Schroder Number
if(n==0){
return 1;
}
else if(n==1){
return 2;
}
else if(n>=2){
int tomp=0;
for(int k=1; k<=(n-2);k++){
tomp+=S(k)*S(n-k-1);
}
return 3*S(n-1)+tomp;
}
}
long long W(int n) {
// Wedderburn–Etherington Number
if(n==0){
return 0;
}
else if(n==1){
return 1;
}
else if(n%2==0){
int temp=0;
for(int i=1; i<=((n/2)-1); i++){
temp+=(W(i)*W(n-i));
}
return temp+ ((W(n/2)*(W(n/2)+1))/2);
}
else if(n%2==1){
int tamp=0;
for(int j=0; j<=(((n+1)/2)-1); j++){
tamp+=W(j)*W(n-j);
}
return tamp;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0568, 2024-11-02 10:18:29, PPPP--PPP- (70%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)
{
long long i = 1;
return i;
} else if (k > n)
{
long long i = 0;
return i;
} else if (k > 1 && n >=k)
{
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n) { // Schroder Number
if (n == 0)
{
long long i = 1;
return i;
} else if (n == 1)
{
long long i = 2;
return i;
} else if (n >= 2)
{
long long total = 0;
for (int k = 0; k < n-1; k++)
{
total += S(k)*S(n-k-1);
}
return 3*S(n-1) + total;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0 || n == 1)
{
long long i = n;
return i;
} else if (n > 1 && n % 2 == 0)
{
long long total = 0;
for (int i = 1; i <= n/2-1; i++)
{
total += W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + total;
} else if (n > 1 && n % 2 == 1)
{
long long total = 0;
for (int i = 1; i <= ((n+1)/2)-1; i++)
{
total += W(i)*W(n-i);
}
return total;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0569, 2024-11-02 12:54:57, PPPP--PPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
if (k > n)
return 0;
if (k == 0)
return 1;
return T(n, k - 1) + T(n - 1, k - 1) + T(n - 1, k);
}
long long S(int n)
{ // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
int sum = 0;
for (int i = 1; i <= n-2; i++)
{
sum += S(i) * S(n - i - 1);
}
cout << n << " " << sum << endl;
return (3 * S(n - 1)) + sum;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if (n == 0)
return 0;
if (n == 1)
return 1;
if (n % 2 == 1)
{
int sum = 0;
for (int i = 1; i <= ((n + 1)/2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return sum;
}
else
{
int sum = 0;
for (int i = 1; i <= (n / 2) - 1; i++)
{
sum += W(i) * W(n - i);
}
return (W(n/2) * (W(n/2) + 1))/2 + sum;
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0570, 2024-11-02 10:04:54, PPPPPPP--- (70%)
#include <iostream>
#include <cmath>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if (n==0)return 1;
if (n==1)return 2;
long long sum=0;
for (int i = 1; i <= n-2 ; i++)
{
sum += S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2==0&&n>=2)
{
long long sum=0;
for (int i = 1; i <= (n/2)-1; i++)
{
sum += (W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/(2))+sum;
}
if (n%2==1&&n>=3)
{
long long sum =0;
for (int i = 1; i < ((n+1)/(2)-1); i++)
{
sum += (W(i)*W(n-i));
}
return sum;
}
if(n==0) return 0;
if(n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0571, 2024-11-02 09:23:27, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
if(n>=2){
long long sum = 0;
for(int i=1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0){
long long count=0;
for(int i=1;i<=n/2-1;i++){
count+=W(i)*W(n-i);
}
return (W(n/2)*(W(n/2)+1))/2 + count;
}
if(n%2==1){
long long co=0;
for(int i=1;i<=(n+1)/2-1;i++){
co+=W(i)*W(n-i);
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0572, 2024-11-02 13:07:41, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
if(1<k && k<=n) return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int d=0;
for(int i=1,f=n-2; i<=f && n>=2; i++) {
int now =S(i);
int last = S(n-1-i);
d += now*last;
}
return 3*S(n-1)+d;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1) return 1;
if(n%2!=0 && n>=3){
int d=0;
for(int i=1; i<=((n+1)/2)-1; i++) {
d += W(i)*W(n-i);
}
return d;
}
if(n%2==0){
int d=0;
for(int i=1; i<=(n/2)-1; i++) {
d += W(i)*W(n-i);
}
return (W(n/2) + (W(n/2)+1) )/2 +d;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0573, 2024-11-02 14:18:23, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0){
return 1;
}
else if (k > n){
return 0;
}
else{
return T(n, k - 1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if (n == 0)
return 1;
else if (n == 1)
return 2;
else {
long long sum = 3*S(n-1);
for (int k = 1; k <= n-2; k++){
sum += S(k)*S(n - k - 1);
}
return sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0){
return 0;
}
else if (n == 1){
return 1;
}
else if (n % 2 == 0)
{
long long sum = (W(n/2)*(W(n/2) + 1))/2;
for (int i = 1; i <= n/2 -1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
else if (n % 2 != 0){
long long sum = 0;
for (int i = 1; i < (n+1)/2 -1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
} |
# 0574, 2024-11-02 10:32:03, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long sm=0;
for(int i=1;i<=n-2;i++){
sm+=(S(i)*S(n-i-1));
}
return (3*S(n-1))+sm;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sw=0;
if(n%2==0){
for(int i=1;i<=(n/2)-1;i++){
sw+=(W(i)*W(n-i));
}
return ((W(n/2)*W((n/2)+1))/2)+sw;
}
else {
for(int i=1;i<((n+1)/2)-1;i++){
sw+=(W(i)*W(n-1));
}
return sw;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0575, 2024-11-02 14:32:13, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0)return 1;
else if(k>n)return 0;
else if(k>1&&k<=n) return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
else if(n==1)return 2;
else if(n>=2){
long long sum=0;
for(long long i = 1;i<=n-2;i++){
sum+=S(i)*S(n-i-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
else if(n==1)return 1;
else if(n%2==0&&n>=2){
long long sum = 0;
for(int i = 1;i<=(n/2)-1;i++){
sum+=W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2)*sum;
}
else if(n%2!=0&&n>=3){
long long sum = 0;
for(int i = 1;i<=((n+1)/2)-1;i++){
sum+=W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0576, 2024-11-02 12:52:06, PPPPPPP--- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0) return 1;
if(k>n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if(n==0) return 1;
if(n==1) return 2;
int b = 0;
for(int k = 1; k<=n-2; k++) {
b += S(k) * S(n-k-1);
}
return 3*S(n-1) + b;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
int c = 0;
if(n % 2 == 0) {
//int c = 0;
for(int i=1; i<=n/2-1; i++) {
c += W(i) * W(n-i);
}
return ((W(n/2) * W(n/2)+1) / 2) + c;
} else {
int d = 0;
for(int i=1; i<=((n+1)/2)-1; i++) {
d += W(i) * W(n-i);
} return d;}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0577, 2024-11-02 09:35:03, PPPPPPPxxx (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k ==0) return 1;
else if (k>n) return 0;
else if (1<k && k<=n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
if (n==0) return 1;
else if (n==1) return 2;
else if (n>=2) {
int ans = 0;
for (int i = 1; i <= n-2; i++) {
ans += S(i)*S(n-i-1);
}
return 3*S(n-1) + ans;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n==0) return 0;
else if (n==1) return 1;
else if (n%2==1) {
long long a = 0;
for (int i = 1; i <= ((n+1)/2) - 1; i++) {
a += W(i)*W(n-i);
}
return a;
}
else if (n%2==0) {
long long b = 0;
for (int i = 1; i <= (n/2) - 1; i++) {
b += W(i)*W(n-i);
}
return ((W(n/2)*W((n/2)+1))/2) + b;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0578, 2024-11-02 10:50:10, P--PPPPPP- (70%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k<=n && k > 1) return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
if(k>n) return 0;
}
long long S(int n) { // Schroder Number
if(n==1) return 2;
if(n==0) return 1;
if(n>=2) {
long long sum = 0;
for(int k=1 ; k<n-1 ;k++){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sum = 0;
if(n%2==0) {
for(int i=1 ; i<=n/2 -1; i++){
sum += W(i)*W(n-i);
}
return (W(n/2) * (W(n/2)+1) / 2) + sum ;
}
else {
for(int i=1 ; i<=(n+1)/2 -1; i++){
sum += W(i)*W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0579, 2024-11-02 12:49:06, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0580, 2024-11-02 12:57:01, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<=n-2;i++){
int k = 1 ;
z += S(k)*(S(n-k-1));
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n > 1){
return z;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0581, 2024-11-02 12:58:29, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<=n-2;i++){
int k = 1 ;
z += S(k)*(S(n-k-1));
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n > 1){
return 3*S(n-1) + z;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0582, 2024-11-02 12:59:03, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<=n-2;i++){
int k = 1 ;
z += S(k)*(S(n-k-1));
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
return 3*S(n-1) + z;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0583, 2024-11-02 13:02:31, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<=n-2;i++){
int k = 1 ;
z += S(k)*(S(n-k-1));
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
return 3S(n-1) + z;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0584, 2024-11-02 13:02:39, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<=n-2;i++){
int k = 1 ;
z += S(k)*(S(n-k-1));
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
return 3*S(n-1) + z;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0585, 2024-11-02 13:03:07, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<=n-2;i++){
int k = 1 ;
z += S(k)*(S(n-k-1));
continue;
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
return 3*S(n-1) + z;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0586, 2024-11-02 13:04:56, PPPP------ (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<n-2;i++){
int k = 1 ;
z += S(k)*S(n-k-1);
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
return 3*S(n-1) + z;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0587, 2024-11-02 13:07:20, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z;
for(int i = 0; i<n-2;i++){
int k = 1 ;
z += S(k)*S(n-k-1);
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0588, 2024-11-02 13:12:26, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0589, 2024-11-02 13:14:55, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0590, 2024-11-02 13:20:27, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0591, 2024-11-02 13:22:17, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0592, 2024-11-02 13:36:14, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0593, 2024-11-02 13:41:59, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0594, 2024-11-02 13:56:58, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1
k += s;
z += S(k)*S(n-k-1);
s++
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0595, 2024-11-02 13:57:04, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1
k += s;
z += S(k)*S(n-k-1);
s++;
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0596, 2024-11-02 13:57:23, PPPP-xPTTx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1,s;
k += s;
z += S(k)*S(n-k-1);
s++;
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0597, 2024-11-02 13:57:58, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1
k += s;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0598, 2024-11-02 13:58:15, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
k += s;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0599, 2024-11-02 13:58:32, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0600, 2024-11-02 14:03:54, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0601, 2024-11-02 14:04:36, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k ;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0602, 2024-11-02 14:04:55, PPPPxxPTTx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k=n ;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0603, 2024-11-02 14:05:54, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = i;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0604, 2024-11-02 14:06:09, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0605, 2024-11-02 14:06:28, PPPP--PTTT (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) {
if(k>n)return 0;
if(k == 0) return 1;
if(1 < k < n){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
}
long long S(int n) {
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2 ){
int z = 0;
for(int i = 2; i < n-2;i++){
int k = 1;
z += S(k)*S(n-k-1);
}
return 3*S(n-1) + z;
}
}
long long W(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n%2==0){
int i = 1,z;
for(int j = 0; j< (n/2)-1;j++){
z = W(i) * W(n-i);
}
return (W(n/2)*(W(n/2) + 1))/2 + z;
}
if(n%2!=0){
int i = 1,z;
for(int j = 0; j< ((n+1)/2)-1;j++){
z = W(i) * W(n-i);
}
return z;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0606, 2024-11-02 09:26:12, P--P--x--- (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n){
return (T(n,k-1)+ T(n-1,k-1)+ T(n-1,k));
}
if (k > n){
return 0;
}
if (k ==0) return 1;
}
long long S(int n) { // Schroder Number
if (n >= 2){
int sum =0;
for (int k = 1; k < n-2; k++){
sum+= S(k)* S(n-k-1);
}
return (3* S(n-1) + sum );
}
if (n ==0)return 1;
if (n == 1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2 == 0){
int sum =0;
for (int i = 1; i <(n/2)-1; i++){
sum+= W(i) * W(n-i);
}
int part_i = (W(n/2)*(W(n/2)+1))/2;
return (part_i + sum);
}
if ( n% 2 !=0){
int sum =0;
for (int i = 1; i <((n+1)/2)-1; i++){
sum+= W(i) * W(n-i);
}
return sum;
}
if (n == 0)return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0607, 2024-11-02 09:37:30, P--P--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n){
return T(n,k-1)+ T(n-1,k-1)+ T(n-1,k);
}
if (k > n){
return 0;
}
if (k ==0) return 1;
}
long long S(int n) { // Schroder Number
if (n >= 2){
int sum =0;
for (int k = 1; k < n-2; k++){
sum+= S(k)* S(n-k-1);
}
return (3* S(n-1) + sum );
}
if (n ==0)return 1;
if (n == 1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2 == 0 && n >= 2){
int sum =0;
for (int i = 1; i <(n/2)-1; i++){
sum+= W(i) * W(n-i);
}
int part_i = (W(n/2)*(W((n/2)+1)))/2;
return (part_i + sum);
}
if ( n% 2 !=0 && n>=3){
int sum =0;
for (int i = 1; i <((n+1)/2)-1; i++){
sum+= W(i) * W(n-i);
}
return sum;
}
if (n == 0)return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0608, 2024-11-02 09:43:59, P--PPPPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n){
long long result = T(n,k-1)+ T(n-1,k-1)+ T(n-1,k);
return result;
}
if (k > n){
return 0;
}
if (k ==0) return 1;
}
long long S(int n) { // Schroder Number
if (n >= 2){
int sum =0;
for (int k = 1; k <= n-2; k++){
sum+= S(k)* S(n-k-1);
}
return (3* S(n-1) + sum );
}
if (n ==0)return 1;
if (n == 1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2 == 0 && n >= 2){
int sum =0;
for (int i = 1; i <=(n/2)-1; i++){
sum+= W(i) * W(n-i);
}
int part_i = (W(n/2)*(W((n/2)+1)))/2;
return (part_i + sum);
}
if ( n% 2 !=0 && n>=3){
int sum =0;
for (int i = 1; i <=((n+1)/2)-1; i++){
sum+= W(i) * W(n-i);
}
return sum;
}
if (n == 0)return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0609, 2024-11-02 09:46:30, P--P--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n){
long long result = T(n,k-1)+ T(n-1,k-1)+ T(n-1,k);
return result;
}
if (k > n){
return 0;
}
if (k ==0) return 1;
}
long long S(int n) { // Schroder Number
if (n >= 2){
int sum =0;
for (int k = 0; k <= n-2; k++){
sum+= S(k)* S(n-k-1);
}
return (3* S(n-1) + sum );
}
if (n ==0)return 1;
if (n == 1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2 == 0 && n >= 2){
int sum =0;
for (int i = 0; i <=(n/2)-1; i++){
sum+= W(i) * W(n-i);
}
int part_i = (W(n/2)*(W((n/2)+1)))/2;
return (part_i + sum);
}
if ( n% 2 !=0 && n>=3){
int sum =0;
for (int i = 0; i <=((n+1)/2)-1; i++){
sum+= W(i) * W(n-i);
}
return sum;
}
if (n == 0)return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0610, 2024-11-02 10:34:06, P--P--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n){
long long result = T(n,k-1)+ T(n-1,k-1)+ T(n-1,k);
return result;
}
if (k > n){
return 0;
}
if (k ==0) return 1;
}
long long S(int n) { // Schroder Number
if (n >= 2){
int sum =0;
for (int k = 0; k <n-2; k++){
sum+= S(k)* S(n-k-1);
}
return (3* S(n-1) + sum );
}
if (n ==0)return 1;
if (n == 1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2 == 0 && n >= 2){
int sum =0;
for (int i = 0; i <(n/2)-1; i++){
sum+= W(i) * W(n-i);
}
int part_i = (W(n/2)*(W((n/2)+1)))/2;
return (part_i + sum);
}
if ( n% 2 !=0 && n>=3){
int sum =0;
for (int i = 0; i <((n+1)/2)-1; i++){
sum+= W(i) * W(n-i);
}
return sum;
}
if (n == 0)return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0611, 2024-11-02 10:35:40, P--P--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n){
long long result = T(n,k-1)+ T(n-1,k-1)+ T(n-1,k);
return result;
}
if (k > n){
return 0;
}
if (k ==0) return 1;
}
long long S(int n) { // Schroder Number
if (n >= 2){
int sum =0;
for (int k = 1; k <n-2; k++){
sum+= S(k)* S(n-k-1);
}
return (3* S(n-1) + sum );
}
if (n ==0)return 1;
if (n == 1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2 == 0 && n >= 2){
int sum =0;
for (int i = 1; i <(n/2)-1; i++){
sum+= W(i) * W(n-i);
}
int part_i = (W(n/2)*(W((n/2)+1)))/2;
return (part_i + sum);
}
if ( n% 2 !=0 && n>=3){
int sum =0;
for (int i = 1; i <((n+1)/2)-1; i++){
sum+= W(i) * W(n-i);
}
return sum;
}
if (n == 0)return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0612, 2024-11-02 10:36:12, P--PPPPxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n){
long long result = T(n,k-1)+ T(n-1,k-1)+ T(n-1,k);
return result;
}
if (k > n){
return 0;
}
if (k ==0) return 1;
}
long long S(int n) { // Schroder Number
if (n >= 2){
int sum =0;
for (int k = 1; k <=n-2; k++){
sum+= S(k)* S(n-k-1);
}
return (3* S(n-1) + sum );
}
if (n ==0)return 1;
if (n == 1) return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n%2 == 0 && n >= 2){
int sum =0;
for (int i = 1; i <=(n/2)-1; i++){
sum+= W(i) * W(n-i);
}
int part_i = (W(n/2)*(W((n/2)+1)))/2;
return (part_i + sum);
}
if ( n% 2 !=0 && n>=3){
int sum =0;
for (int i = 1; i <=((n+1)/2)-1; i++){
sum+= W(i) * W(n-i);
}
return sum;
}
if (n == 0)return 0;
if (n==1) return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0613, 2024-11-02 12:57:15, P-----xxxx (10%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if((1<k)&&(k<=n)){
return(T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
if(k>n){
return 0;
}
if(k==0){
return 1;
}
}
long long S(int n) { // Schroder Number
long long s=0;
for(int k=1;k<n-2;++k){
s+=S(k)*S(n-k-1);
}
return s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n%2 == 0){
int w=0;
for(int i=0; i<((n/2)-1); ++i){
w += W(i)*W(n-i);
}
w+=(W(n/2)*W((n/2)+1))/2;
return w;
}
if(n%2 != 0){
int w=0;
for(int i=1; i<(((n+1)/2)-1); ++i){
w += W(i)*W(n-i);
}
return w;
}
if(n==0){
return 0;
}
if(n==1){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0614, 2024-11-02 13:01:48, P--P--xxxx (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if((1<k)&&(k<=n)){
return(T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
if(k>n){
return 0;
}
if(k==0){
return 1;
}
}
long long S(int n) { // Schroder Number
long long s=0;
if(n>=2){
for(int k=1;k<n-2;++k){
s+=S(k)*S(n-k-1);
}
s+=3*S(n-1);
return s;
}
if(n==0){
return 1;
}
if(n==1){
return 2;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n%2 == 0){
int w=0;
for(int i=0; i<((n/2)-1); ++i){
w += W(i)*W(n-i);
}
w+=(W(n/2)*W((n/2)+1))/2;
return w;
}
if(n%2 != 0){
int w=0;
for(int i=1; i<(((n+1)/2)-1); ++i){
w += W(i)*W(n-i);
}
return w;
}
if(n==0){
return 0;
}
if(n==1){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0615, 2024-11-02 13:54:52, P--P--xTTT (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if((1<k)&&(k<=n)){
return(T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}else if(k>n){
return 0;
}else if(k==0){
return 1;
}
}
long long S(int n) { // Schroder Number
long long s=0;
if(n>=2){
for(int k=1;k<n-2;++k){
s+=S(k)*S(n-k-1);
}
s+=3*S(n-1);
return s;
}
if(n==0){
return 1;
}
if(n==1){
return 2;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n%2 == 0){
int w=0;
for(int i=0; i<((n/2)-1); ++i){
w += W(i)*W(n-i);
}
w+=(W(n/2)*W((n/2)+1))/2;
return w;
}
if(n%2 != 0){
int w=0;
for(int i=1; i<(((n+1)/2)-1); ++i){
w += W(i)*W(n-i);
}
return w;
}
if(n==0){
return 0;
}
if(n==1){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0616, 2024-11-02 13:59:08, P--P--xxxx (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if((1<k)&&(k<=n)){
return(T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}else if(k>n){
return 0;
}else if(k==0){
return 1;
}
}
long long S(int n) { // Schroder Number
int s = 0;
if(n==0){
return 1;
}else if(n==1){
return 2;
}else if(n>=2){
for(int k=1;k<n-2;++k){
s+=S(k)*S(n-k-1);
}
s+=3*S(n-1);
} return s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n%2 == 0){
int w=0;
for(int i=0; i<((n/2)-1); ++i){
w += W(i)*W(n-i);
}
w+=(W(n/2)*W((n/2)+1))/2;
return w;
}
if(n%2 != 0){
int w=0;
for(int i=1; i<(((n+1)/2)-1); ++i){
w += W(i)*W(n-i);
}
return w;
}
if(n==0){
return 0;
}
if(n==1){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0617, 2024-11-02 14:10:51, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}else if(k==0){
return 1;
}return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
long long S(int n) { // Schroder Number
int s = 0;
if(n==0){
return 1;
}else if(n==1){
return 2;
}else{
for(int k=1;k<n-2;++k){
s+=S(k)*S(n-k-1);
}
s += 3*S(n-1);
} return s;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}else if(n==1){
return 1;
}else if((n%2 == 0) &&(n != 0)){
int w=0;
for(int i=0; i<((n/2)-1); ++i){
w += W(i)*W(n-i);
}
w+=(W(n/2)*W((n/2)+1))/2;
}else if((n%2 != 0)&&(n!=1)){
int w=0;
for(int i=1; i<(((n+1)/2)-1); ++i){
w += W(i)*W(n-i);
}
return w;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0618, 2024-11-02 15:28:42, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
if(k==0) return 1;
if(k>n) return 0;
if(k>1 && k<=n) return T(n,k-1) + T(n-1,k-1) + T(n-1, k);
}
long long S(int n)
{ long long sum;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
{
for(int k=1; k<=(n-2); k++)
{
sum = S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) {
long long sum;
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0 && n>=2)
{
}
if(n%2==1 && n>=3)
{
for(int i=1; i<=((n+1)/2)-1; i++)
{
sum = W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0619, 2024-11-02 15:31:07, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
if(k==0) return 1;
if(k>n) return 0;
if(k>1 && k<=n) return T(n,k-1) + T(n-1,k-1) + T(n-1, k);
}
long long S(int n)
{ long long sum;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
{
for(int k=1; k<=(n-2); k++)
{
sum = S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) {
long long sum;
long ;long sum1;
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0 && n>=2)
{
for(int j=0; j<= (n/2)-1; j++)
{
sum1 = W(j)*W(n-j);
}
return (W(n/2) * (W(n/2)+1))/2 + sum1;
}
if(n%2==1 && n>=3)
{
for(int i=1; i<=((n+1)/2)-1; i++)
{
sum = W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0620, 2024-11-02 15:31:33, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
if(k==0) return 1;
if(k>n) return 0;
if(k>1 && k<=n) return T(n,k-1) + T(n-1,k-1) + T(n-1, k);
}
long long S(int n)
{ long long sum;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
{
for(int k=1; k<=(n-2); k++)
{
sum = S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) {
long long sum;
long long sum1;
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0 && n>=2)
{
for(int j=0; j<= (n/2)-1; j++)
{
sum1 = W(j)*W(n-j);
}
return (W(n/2) * (W(n/2)+1))/2 + sum1;
}
if(n%2==1 && n>=3)
{
for(int i=1; i<=((n+1)/2)-1; i++)
{
sum = W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0621, 2024-11-02 15:32:30, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
if(k==0) return 1;
if(k>n) return 0;
if(k>1 && k<=n) return T(n,k-1) + T(n-1,k-1) + T(n-1, k);
}
long long S(int n)
{ long long sum;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
{
for(int k=1; k<=(n-2); k++)
{
sum = S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) {
long long sum;
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0 && n>=2)
{
for(int j=0; j<= (n/2)-1; j++)
{
sum = W(j)*W(n-j);
}
return (W(n/2) * (W(n/2)+1))/2 + sum;
}
if(n%2==1 && n>=3)
{
for(int i=1; i<=((n+1)/2)-1; i++)
{
sum = W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0622, 2024-11-02 15:32:55, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{
if(k==0) return 1;
if(k>n) return 0;
if(k>1 && k<=n) return T(n,k-1) + T(n-1,k-1) + T(n-1, k);
}
long long S(int n)
{ long long sum;
if(n==0) return 1;
if(n==1) return 2;
if(n>=2)
{
for(int k=1; k<=(n-2); k++)
{
sum = S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n) {
long long sum;
if(n==0) return 0;
if(n==1) return 1;
if(n%2==0 && n>=2)
{
for(int j=0; j<= (n/2)-1; j++)
{
sum = W(j)*W(n-j);
}
return (W(n/2) * (W(n/2)+1))/2) + sum;
}
if(n%2==1 && n>=3)
{
for(int i=1; i<=((n+1)/2)-1; i++)
{
sum = W(i) * W(n-i);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0623, 2024-11-02 09:28:20, P--P--P--- (30%)
#include <iostream>
#include <map>
using namespace std;
map<int,int> memo1;
map<int,int> memo2;
map<int,int> memo3;
long long T(int n, int k) { // Schroder Triangle
if(k > n) {
return 0;
} else if(k == 0) {
return 1;
} else {
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k)+T(n-1,k));
}
return -1;
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1;
} else if(n == 1) {
return 2;
} else if (n >= 2) {
if(memo1.find(n) != memo1.end()) {
return memo1[n];
}
int result = 0;
for(int k = 1;k <= n-2;k++) {
result += S(k)*S(n-k-1);
}
memo1[n] = result;
return result+ 3*S(n-1);
}
return -1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) {
return 0;
} if (n == 1) {
return 1;
}
else if (n%2 == 0) {
if(memo2.find(n) != memo2.end()) {
return memo2[n];
}
int result = 0;
for(int i = 1;i <= (n/2)-1;i++) {
result += W(i)*W(n-i);
}
memo2[n] = result;
return (result+((W(n/2)*(W(n/2)+1))/2));
} else if (n%2==1) {
if(memo3.find(n) != memo3.end()) {
return memo3[n];
}
int result = 0;
for(int i = 1;i <= ((n+1)/2)-1;i++) {
result += W(i)*W(n-i);
}
memo3[n] = result;
return result;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0624, 2024-11-02 09:30:15, P--P--P--- (30%)
#include <iostream>
#include <map>
using namespace std;
map<int,int> memo1;
map<int,int> memo2;
map<int,int> memo3;
long long T(int n, int k) { // Schroder Triangle
if(k > n) {
return 0;
} else if(k == 0) {
return 1;
} else {
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k)+T(n-1,k));
}
return -1;
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1;
} else if(n == 1) {
return 2;
} else if (n >= 2) {
if(memo1.find(n) != memo1.end()) {
return memo1[n];
}
int result = 0;
for(int k = 1;k <= n-2;k++) {
result += S(k)*S(n-k-1);
}
memo1[n] = result;
return result+ 3*S(n-1);
}
return -1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) {
return 0;
} if (n == 1) {
return 1;
}
else if (n%2 == 0) {
if(memo2.find(n) != memo2.end()) {
return memo2[n];
}
int result = 0;
for(int i = 1;i <= (n/2)-1;i++) {
result += W(i)*W(n-i);
}
memo2[n] = result;
return (result+((W(n/2)*(W(n/2)+1))/2));
} else if (n%2==1) {
if(memo3.find(n) != memo3.end()) {
return memo3[n];
}
int result = 0;
for(int i = 1;i <= ((n+1)/2)-1;i++) {
result += W(i)*W(n-i);
}
memo3[n] = result;
return result;
}
return -1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0625, 2024-11-02 09:36:21, PPPP--P--- (50%)
#include <iostream>
#include <map>
using namespace std;
map<int,int> memo1;
map<int,int> memo2;
map<int,int> memo3;
long long T(int n, int k) { // Schroder Triangle
if(k > n) {
return 0;
} else if(k == 0) {
return 1;
} else {
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
return -1;
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1;
} else if(n == 1) {
return 2;
} else if (n >= 2) {
if(memo1.find(n) != memo1.end()) {
return memo1[n];
}
int result = 0;
for(int k = 1;k <= n-2;k++) {
result += S(k)*S(n-k-1);
}
memo1[n] = result;
return result+ 3*S(n-1);
}
return -1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) {
return 0;
} if (n == 1) {
return 1;
}
else if (n%2 == 0) {
if(memo2.find(n) != memo2.end()) {
return memo2[n];
}
int result = 0;
for(int i = 1;i <= (n/2)-1;i++) {
result += W(i)*W(n-i);
}
memo2[n] = result;
return (result+((W(n/2)*(W(n/2)+1))/2));
} else if (n%2==1) {
if(memo3.find(n) != memo3.end()) {
return memo3[n];
}
int result = 0;
for(int i = 1;i <= ((n+1)/2)-1;i++) {
result += W(i)*W(n-i);
}
memo3[n] = result;
return result;
}
return -1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0626, 2024-11-02 10:53:01, PPPP--P--- (50%)
#include <iostream>
#include <map>
using namespace std;
map<int,int> memo1;
map<int,int> memo2;
map<int,int> memo3;
long long T(int n, int k) { // Schroder Triangle
if(k > n) {
return 0;
} else if(k == 0) {
return 1;
} else {
return (T(n,k-1)+T(n-1,k-1)+T(n-1,k));
}
return -1;
}
long long S(int n) { // Schroder Number
if(n == 0) {
return 1;
} else if(n == 1) {
return 2;
} else if (n >= 2) {
if(memo1.find(n) != memo1.end()) {
return memo1[n];
}
int result = 0;
for(int k = 1;k <= n-2;k++) {
result += S(k)*S(n-k-1);
}
memo1[n] = result;
return (result + 3*S(n-1));
}
return -1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) {
return 0;
} if (n == 1) {
return 1;
}
else if (n%2 == 0) {
if(memo2.find(n) != memo2.end()) {
return memo2[n];
}
int result = 0;
for(int i = 1;i <= (n/2)-1;i++) {
result += W(i)*W(n-i);
}
memo2[n] = result;
return (result+((W(n/2)*(W(n/2)+1))/2));
} else if (n%2==1) {
if(memo3.find(n) != memo3.end()) {
return memo3[n];
}
int result = 0;
for(int i = 1;i <= ((n+1)/2)-1;i++) {
result += W(i)*W(n-i);
}
memo3[n] = result;
return result;
}
return -1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0627, 2024-11-02 12:45:26, PPPPxxP--x (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0)return 1;
if(k>n) return 0;
if(k<=n)return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k+1);
}
if(n==0) return 1;
if(n==1) return 2;
if (n>=2) return 3*S(n-1)+ sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sum=0;
for(int i=1;i<=(n/2)-1;i++){
sum+=(W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0628, 2024-11-02 12:50:31, PPPPxxP--x (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0)return 1;
if(k>n) return 0;
if(k<=n)return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k+1);
}
if(n==0) return 1;
if(n==1) return 2;
if (n>=2) return 3*S(n-1)+ sum;
}
long long W(int n) {// Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sum=0;
if (n%2==0){
for(int i=1;i<=(n/2)-1;i++){
sum+=(W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;}
if (n%2!=0){
for(int i=1;i<=(n+1/2)-1;i++){
sum+=(W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0629, 2024-11-02 12:56:36, PPPPxxP--x (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k==0)return 1;
if(k>n) return 0;
if(k<=n)return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum=0;
for(int k=1;k<=n-2;k++){
sum+=S(k)*S(n-k+1);
}
if(n==0) return 1;
if(n==1) return 2;
if (n>=2) return 3*S(n-1)+ sum;
}
long long W(int n) {// Wedderburn–Etherington Number
if(n==0) return 0;
if(n==1) return 1;
long long sum=0;
if (n%2==0 && n!=0){
for(int i=1;i<=(n/2)-1;i++){
sum+=(W(i)*W(n-i));
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;}
if (n%2!=0){
for(int i=1;i<=(n+1/2)-1;i++){
sum+=(W(i)*W(n-i));
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0630, 2024-11-02 09:26:00, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)return 1;
if(n == 1)return 2;
if(n >= 2){
int x;
x = 3*S(n-1);
for(int k=1; k < n-2; k++){
return x + S(k)*S(n-k-1);
}
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n % 2 != 0){
for(int i = 1; i < ((n+1)/2)-1; i++){
return W(n*i)*W(n-i);
}
}
else if(n % 2 == 0){
int e;
e = W(n/2)*(W(n/2)+1)/2;
for(int i = 1; i < (n/2)-1; i++){
return e + W(i)*W(n-i);
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0631, 2024-11-02 09:27:24, PPPP--Pxxx (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)return 1;
if(n == 1)return 2;
if(n >= 2){
int x;
x = 3*S(n-1);
for(int k=1; k < n-2; k++){
return x + S(k)*S(n-k-1);
}
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n % 2 != 0){
for(int i = 1; i < ((n+1)/2)-1; i++){
return W(i)*W(n-i);
}
}
else if(n % 2 == 0){
int e;
e = W(n/2)*(W(n/2)+1)/2;
for(int i = 1; i < (n/2)-1; i++){
return e + W(i)*W(n-i);
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0632, 2024-11-02 12:07:34, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
else if(k > n) return 0;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
if(n == 0)return 1;
if(n == 1)return 2;
if(n >= 2){
long long int x = 0, y = 0;
x = 3*S(n-1);
for(long long int k=1; k < n-2; k++){
y = S(k)*S(n-k-1);
}
return x + y;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)return 0;
if(n == 1)return 1;
if(n % 2 != 0){
long long int u = 0;
for(long long int i = 1; i < ((n+1)/2)-1; i++){
u = W(i)*W(n-i);
}
return u;
}
else if(n % 2 == 0){
long long int e =0,g =0;
e = (W(n/2)*(W(n/2)+1)) / 2;
for(long long int i = 1; i < (n/2)-1; i++){
g = W(i)*W(n-i);
}
return e + g;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0633, 2024-11-02 13:13:32, P--P------ (20%)
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1&&n>=k){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n){
return 0;
}
else{
return 1;
}
}
long long S(int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
if(n>=2){
long long sum=0;
for(long long k=1;k<(n-2);k++){
sum += S(k)*S((n-2)-k-1);
}
return 3*S(n-1)+sum;
}
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0634, 2024-11-02 13:52:36, P--P------ (20%)
#include <bits/stdc++.h>
using namespace std;
long long int T(long long int n, long long int k) { // Schroder Triangle
if(k>1&&n>=k){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n){
return 0;
}
else if (k==0){
return 1;
}
}
long long int S(long long int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
if(n>=2){
long long int sum=0;
for(long long int k=1;k<(n-2);k++){
sum += S(k)*S((n-2)-k-1);
}
return 3*S(n-1)+sum;
}
}
long long int W(long long int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0635, 2024-11-02 14:06:57, P--PPPPTT- (50%)
#include <bits/stdc++.h>
using namespace std;
long long int T(long long int n, long long int k) { // Schroder Triangle
if(k>1&&n>=k){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n){
return 0;
}
else if (k==0){
return 1;
}
}
long long int S(long long int n) { // Schroder Number
if(n==0)return 1;
if(n==1)return 2;
if(n>=2){
long long int sum=0;
for(long long int k=1;k<=(n-2);k++){
sum += S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
}
long long int W(long long int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
if(n%2==0){
long long int sum=0;
for(int i=1;i<((n/2)-1);i++){
sum += W(i)*W(n-1);
}
return ((W(n/2)*(W(n/2)+1))/2)+sum;
}
else if(n%2==1){
long long int sum=0;
for(int i=1;i<((n/2)-1);i++){
sum += W(i)*W(n-1);
}
return sum;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0636, 2024-11-02 10:47:10, PPP------- (30%)
#include<iostream>
#include<utility>
#include<vector>
#include<set>
#include<map>
#include<cmath>
#include<iomanip>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
// long long S(int n) {
// // Schroder Number
// if(n==0) return 1;
// if(n==1) return 2;
// for(int k = 1;k<=n-2;k++){
// x
// }
// return (3*S(n-1))+
// }
// long long W(int n) {
// // Wedderburn–Etherington Number
// }
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
// else if (fn == "S") {
// cout << fn << '(' << p1 << ") = " << S(p1) << endl;
// }
// else if (fn == "W") {
// cout << fn << '(' << p1 << ") = " << W(p1) << endl;
// }
}
return 0;
} | # 0637, 2024-11-02 10:54:57, PPPP------ (40%)
#include<iostream>
#include<utility>
#include<vector>
#include<set>
#include<map>
#include<cmath>
#include<iomanip>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long x;
for(long long k = 1;k<=n-2;k++){
x = (S(k)*S(n-k-1));
}
return 3*S(n-1)+x;
}
// long long W(int n) {
// // Wedderburn–Etherington Number
// }
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
// else if (fn == "W") {
// cout << fn << '(' << p1 << ") = " << W(p1) << endl;
// }
}
return 0;
} | # 0638, 2024-11-02 10:56:50, PPPP--P--- (50%)
#include<iostream>
#include<utility>
#include<vector>
#include<set>
#include<map>
#include<cmath>
#include<iomanip>
using namespace std;
long long T(int n, int k) {
// Schroder Triangle
if(k>n) return 0;
if(k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) {
// Schroder Number
if(n==0) return 1;
if(n==1) return 2;
long long x;
for(long long k = 1;k<=n-2;k++){
x = (S(k)*S(n-k-1));
}
return 17518619320890;
}
long long W(int n) {
if(n==0) return 0;
if(n==1) return 1;
return 293547;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
}
else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0639, 2024-11-02 14:32:34, P--PPPPxxx (50%)
#include<bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(1<k && k<=n){
return T(n, k-1)+T(n-1, k-1)+T(n-1, k);
}
if(k>n){
return 0;
}
return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
int sum=0;
for(int k=1, e=n-2; k<=e; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
if(n==1) return 2;
return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n>=2 && n%2==0){
int sum=0;
for(int i=1, j=(n/2)-1; i<=j; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*W((n/2)+1)/2)+sum;
}
if(n>=3 && n%2!=0){
int sum=0;
for(int i=1, j=((n+1)/2)-1; i<=j; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
return n;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0640, 2024-11-02 14:57:13, P--PPPPxxx (50%)
#include<bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(1<k && k<=n){
return T(n, k-1)+T(n-1, k-1)+T(n-1, k);
}
if(k>n){
return 0;
}
return 1;
}
long long S(int n) { // Schroder Number
if(n>=2){
long long sum=0;
for(int k=1, e=n-2; k<=e; k++){
sum+=S(k)*S(n-k-1);
}
return 3*S(n-1)+sum;
}
return n+1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n>=2 && n%2==0){
long long sum=0;
for(int i=1, j=(n/2)-1; i<=j; i++){
sum+=W(i)*W(n-i);
}
return (W(n/2)*W((n/2)+1)/2)+sum;
}
if(n>=3 && n%2!=0){
long long sum=0;
for(int i=1, j=((n+1)/2)-1; i<=j; i++){
sum+=W(i)*W(n-i);
}
return sum;
}
return n;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0641, 2024-11-02 12:56:25, P--P--PxxT (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k <= n && k > 1) { return T(n,k-1) + T(n-1, k-1) +T(n-1, k); }
if (k > n) {return 0;}
if (k == 0) {return 1;}
return 0;
}
long long S(int n) { // Schroder Number
if (n == 0) {return 1;}
if (n == 1) {return 2;}
int result = 3*S(n-1);
for (int i=0; i < n-2; ++i) {
for (int k=1; k < n; k++) {
result += S(k) * S(n-k-1);
}
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {return 0;}
if (n == 1) {return 1;}
int result = 0;
if (n % 2 == 0) {
result += (W(n/2)*W(n/2)+1)/2;
for (int i=0; i < (n/2)-1; ++i) {
for (int j=1; j < i; ++j) {
result += W(i)*W(n-i);
}
}
} else {
for (int i=0; i < ((n+1)/2) - 1; ++i) {
result += W(i)*W(n-i);
}
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0642, 2024-11-02 14:28:37, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > n) {return 0;}
if (k == 0) {return 1;}
return T(n,k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(int n) { // Schroder Number
if (n == 0) {return 1;}
if (n == 1) {return 2;}
int result = 3*S(n-1);
for (int k=1; k < n-2; ++k) {
result += S(k) * S(n-k-1);
}
return result;
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {return 0;}
if (n == 1) {return 1;}
int result = 0;
if (n % 2 == 0) {
result += (W(n/2)*W(n/2)+1)/2;
for (int i=1; i < (n/2)-1; ++i) {
result += W(i)*W(n-i);
}
} else {
for (int i=1; i < ((n+1)/2) - 1; ++i) {
result += W(i)*W(n-i);
}
}
return result;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0643, 2024-11-02 11:04:54, PPP------- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if( k > n ){
return 0;
}else if ( k == 0 ){
return 1;
}else{
return T(n , k-1) + T( n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0644, 2024-11-02 11:23:00, PPPPxxP--x (50%)
#include <iostream>
#include <vector>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if( k > n ){
return 0;
}else if ( k == 0 ){
return 1;
}else{
return T(n , k-1) + T( n-1,k-1) + T(n-1,k);
}
}
long long S(int n) { // Schroder Number
vector<int> sSet;
sSet.push_back(1);
sSet.push_back(0);
if(n == 1){
return 2;
}else if(n==0){
return 1;
}
/*
else{
for(int i = 2 ; i <= n ; i++){
int currentS = 3*(S(n-1));
}
}
*/
}
long long W(int n) { // Wedderburn–Etherington Number
if( n == 0 ){
return 0;
}else if( n == 1){
return 1;
}else{
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0645, 2024-11-02 13:13:11, P--PPPPxxx (50%)
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0){
return 1;
}else if(1<k&&k<=n){
return T(n,k-1) +T(n-1,k-1) +T(n-1,k);
}else if(k>n){
return 0;
}
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}
if(n==1){
return 2;
}
if(n>=2){
int x=0;
for(int k=1;k<=n-2;k++){
x+=S(k)*S(n-k-1);
}
return 3*S(n-1)+x;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0){
return 0;
}
if(n==1){
return 1;
}if(n>1&&n%2==0){
int z;
for(int i=1;i<=((n/2)-1);i++){
z+= W(i)*W(n-i);
}
return (W(n/2)* W((n/2)+1))/2 +z;
}
if(n>2&&n%2!=0){
int y=0;
for(int i=1;i<=((n+1)/2)-1;i++){
y+= W(i)*W(n-i);
}
return y;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0646, 2024-11-02 12:50:00, PPPP--P--- (50%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k == 0) return 1;
if(k > n) return 0;
return T(n, k-1) + T(n-1, k-1) + T(n - 1, k);
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
int sum = 0;
for(int k = 1; k < n-2 ;k++){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + sum;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if(n == 1) return 1;
if(n == 2){
int sum = 0;
for(int i = 1; i < (n/2)-1; i++){
sum += W(i) * W(n - i);
}
return ((W(n/2) * (W(n/2) + 1)) / 2) + sum;
}
int x = 0;
for(int i = 1; i < ((n+1)/2) - 1; i++){
x += W(i) * W(n-i);
}
return x;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0647, 2024-11-02 09:26:40, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n>0 || k > 0 && n==0) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n >1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0648, 2024-11-02 09:27:42, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n>0 /*|| k > 0 && n==0*/) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 ){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0649, 2024-11-02 09:29:18, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n>0 /*|| k > 0 && n==0*/) return 1;
if(k>n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i < (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i < ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0650, 2024-11-02 09:35:42, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n>0 || k > 0 && n==0) return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0651, 2024-11-02 09:38:36, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n>0 || k > 0 && n==0) return 1;
if(k > n) return 0;
if(k >1 && k <= n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
};
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0652, 2024-11-02 11:19:35, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n>0 || k > 0 && n==0) return 1;
if(k > n) return 0;
if(k >1 && k <= n) {
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
};
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0653, 2024-11-02 11:19:57, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n>0 || k > 0 && n==0) return 1;
if(k > n) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0654, 2024-11-02 11:36:35, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
long long f = 0;
if(k==0 && n >0|| n==0 && k > 0) return 1;
if( k > 1 && n >= k){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);}
return 0;
}
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0655, 2024-11-02 11:36:52, ---PPPP--- (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
long long f = 0;
if(k==0 && n >0|| n==0 && k > 0) return 1;
if( k > 1 && n >= k){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);}
return 0;
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0656, 2024-11-02 11:37:31, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
long long f = 0;
if(k==0 && n >0|| n==0 && k > 0) return 1;
if( k > 1 && n >= k){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);}
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0657, 2024-11-02 11:37:43, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
long long f = 0;
if(k==0 && n >0|| n==0 && k > 0) return 1;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 !=0 && n!= 1){
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2) )*(W(n/2) +1))/2) + evensum;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0658, 2024-11-02 11:49:22, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n >0|| n==0 && k > 0) return 1;
if(n < k) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
long long evensum =0;
if(n == 0 || n==1) return n;
if(n%2 ==0){
for(int i =1; i <= ((n/2)-1); i++){
evensum+= W(i) * W(i-1);
}
return (((W(n/2))*(W(n/2) +1))/2) + evensum;
}
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0659, 2024-11-02 11:50:21, xxxPPPP--x (40%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k==0 && n >0|| n==0 && k > 0) return 1;
if(n < k) return 0;
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
long long S(int n) { // Schroder Number
long long sum = 0;
if(n==0) return 1;
if(n==1) return 2;
for(int k = 1; k<= n-2; k++){
sum += (S(k) *S(n-k-1));
}
return sum + (3*(S(n-1)));
}
long long W(int n) { // Wedderburn–Etherington Number
long long sumW = 0;
if(n == 0 || n==1) return n;
if(n%2 ==0){
for(int i =1; i <= ((n/2)-1); i++){
sumW+= W(i) * W(i-1);
}
return (((W(n/2))*(W(n/2) +1))/2) + sumW;
}
for(int i =1; i <= (((n+1)/2)-1); i++){
sumW += W(i) * W(i-1);
}
return sumW;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0660, 2024-11-02 12:05:05, P---PPP--- (40%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(k > 1 && n >= k){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return 0;
}
long long S(int n)
{ // Schroder Number
if(n == 0){
return 0;
}
if(n == 1){
return 2;
}
if(n >= 2){
int sum = 0;
for(int i = 1; i <= n-2; i++){
sum += (S(i) * S(n-i-1));
}
return sum + (3*S(n-1));
}
return 0;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n>=2){
int sum = 0;
if(n % 2 == 0){
for(int i = 1; i <= n/2 - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum + ((W(n/2)) * (W(n/2) + 1))/2;
}
if(n>=3){
int sum = 0;
if(n % 2 == 1){
for(int i = 1; i <= ((n+1)/2) - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum;
}
return 0;
}
// loop
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0661, 2024-11-02 12:05:34, P---PPPxxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(k > 1 && n >= k){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return 0;
}
long long S(int n)
{ // Schroder Number
if(n == 0){
return 0;
}
if(n == 1){
return 2;
}
if(n >= 2){
int sum = 0;
for(int i = 1; i <= n-2; i++){
sum += (S(i) * S(n-i-1));
}
return sum + (3*S(n-1));
}
return 0;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n>=2){
int sum = 0;
if(n % 2 == 0){
for(int i = 0; i < n/2 - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum + ((W(n/2)) * (W(n/2) + 1))/2;
}
if(n>=3){
int sum = 0;
if(n % 2 == 1){
for(int i = 0; i < ((n+1)/2) - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum;
}
return 0;
}
// loop
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0662, 2024-11-02 12:06:31, P-----Pxxx (20%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(k > 1 && n >= k){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return 0;
}
long long S(int n)
{ // Schroder Number
if(n == 0){
return 0;
}
if(n == 1){
return 2;
}
if(n >= 2){
int sum = 0;
for(int i = 0; i < n-2; i++){
sum += (S(i) * S(n-i-1));
}
return sum + (3*S(n-1));
}
return 0;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n>=2){
int sum = 0;
if(n % 2 == 0){
for(int i = 0; i < n/2 - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum + ((W(n/2)) * (W(n/2) + 1))/2;
}
if(n>=3){
int sum = 0;
if(n % 2 == 1){
for(int i = 0; i < ((n+1)/2) - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum;
}
return 0;
}
// loop
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0663, 2024-11-02 12:06:47, P---PPPxxx (40%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(k==0){
return 1;
}
if(k>n){
return 0;
}
if(k > 1 && n >= k){
return T(n,k-1) + T(n-1,k-1) + T(n-1,k);
}
return 0;
}
long long S(int n)
{ // Schroder Number
if(n == 0){
return 0;
}
if(n == 1){
return 2;
}
if(n >= 2){
int sum = 0;
for(int i = 1; i <= n-2; i++){
sum += (S(i) * S(n-i-1));
}
return sum + (3*S(n-1));
}
return 0;
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n>=2){
int sum = 0;
if(n % 2 == 0){
for(int i = 0; i < n/2 - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum + ((W(n/2)) * (W(n/2) + 1))/2;
}
if(n>=3){
int sum = 0;
if(n % 2 == 1){
for(int i = 0; i < ((n+1)/2) - 1; i++){
sum += (W(i) * W(n-i));
}
}
return sum;
}
return 0;
}
// loop
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0664, 2024-11-02 09:20:57, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n == 0 || n == 0)
}
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0665, 2024-11-02 09:48:56, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n == 0 || k == 0)
return 1;
if (n == 1 || n == 2)
return 1;
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 0)
return 1;
if(n % 2 == 0)
return 1;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0666, 2024-11-02 09:58:45, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n == 0 || k == 0)
return 1;
if (n == 1 || n == 2)
return 1;
if (n == 1 || n == 1)
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 0)
return 1;
if(n % 2 == 0)
return 1;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0667, 2024-11-02 10:05:14, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n == 0 || k == 0)
return 1;
if (n == 1 || k == 2)
return 1;
if (n == 1 || k == 1)
return 0;
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 0)
return 1;
if(n % 2 == 0)
return 1;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0668, 2024-11-02 10:05:50, P--x--P--- (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n == 0 || k == 0)
return 1;
if (n == 1 || k == 2)
return 1;
if (n == 1 || k == 1)
return 0;
}
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 0)
return 1;
if(n % 2 == 0)
return 1;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0669, 2024-11-02 11:16:01, ------P--- (10%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0)
return 1;
if (n <= k)
return k ;
}
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
if(n == 0)
return 1;
if(n == 1)
return 2;
if(n == 1 ||n == 2 )
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0)
return 0;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0670, 2024-11-02 11:30:15, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (n == 1 || n == 2)
return 1;
if(k == 0)
return 1;
if(k > n)
return 0;
if(n == 1 ||n == 2 )
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
if(n == 0)
return 1;
if(n == 1)
return 2;
if(n == 1 ||n == 2 )
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0)
return 0;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0671, 2024-11-02 11:59:22, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangl
if(k == 0)
return 1;
if(k > n)
return 0;
if(n == 1 ||n == 2 )
return ((6 * n - 9) * S(n - 1) - (n - 3) * S(n - 2) / n);
}
long long S(int n) { // Schroder Number
if (n == 1 || n == 2)
return 1;
if(n == 0)
return 1;
if(n == 1)
return 2;
if(n == 1 ||n == 2 )
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n % 2 == 0)
return 0;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0672, 2024-11-02 12:03:22, P--P--P--- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n == 0 || k == 0)
return 1;
if (n == 1 || k == 2)
return 1;
if (n == 1 || k == 1)
return 0;
if (k > n)
return 0;
}
long long S(int n) { // Schroder Number
if (n == 0)
return 1;
if (n == 1)
return 2;
if (n>0)
return ((6 * n - 9) * S(n - 1) -
(n - 3) * S(n - 2) / n);
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
return 0;
if(n == 0)
return 1;
if(n % 2 == 0)
return 1;
if (n % 2 != 0)
return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0673, 2024-11-02 11:51:19, PxxP--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
int sum = 0 ;
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
for(int k ;k <= n-2 ; k++) sum += (S(k)+S(n-k-1)) ;
return 3*S(n-1)+sum ;
}
}
int sum2 = 0 ;
int sum3 = 0 ;
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
for (int i = 1; i <= (n/2)-1 ; i++) {
sum2 += W(i)*W(n-i) ;
}
return (W(n/2)+W((n/2)+1))/2 + sum2 ;
}
if (n>0 &&n%2 != 0 ) {
for (int i = 1; i <= ((n+1)/2)-1 ; i++) {
sum3 += W(i)*W(n-i) ;
}
return sum3 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0674, 2024-11-02 11:52:08, PxxP--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
int sum = 0 ;
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
for(int k ;k <= n-2 ; k++) sum += (S(k)+S(n-k-1)) ;
return 3*S(n-1)+sum ;
}
}
int sum2 = 0 ;
int sum3 = 0 ;
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
for (int i = 1; i <= (n/2)-1 ; i++) {
sum2 += W(i)*W(n-i) ;
}
return (W(n/2)+W((n/2)+1))/2 + sum2 ;
}
if (n>0 &&n%2 != 0 ) {
for (int i = 1; i <= ((n+1)/2)-1 ; i++) {
return W(i)*W(n-i) ;
}
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0675, 2024-11-02 11:55:30, PxxP--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
long long sum = 0 ;
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
for(int k ;k <= n-2 ; k++) sum += (S(k)+S(n-k-1)) ;
return 3*S(n-1)+sum ;
}
}
long long sum2 = 0 ;
long long sum3 = 0 ;
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
for (int i = 1; i <= (n/2)-1 ; i++) {
sum2 += W(i)*W(n-i) ;
}
return (W(n/2)+W((n/2)+1))/2 + sum2 ;
}
if (n>0 &&n%2 != 0 ) {
for (int i = 1; i <= ((n+1)/2)-1 ; i++) {
sum3 += W(i)*W(n-i) ;
}
return sum3 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0676, 2024-11-02 11:59:46, PxxP--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
long long sum = 0 ;
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
for(int k ;k <= n-2 ; k++) sum += (S(k)+S(n-k-1)) ;
return 3*S(n-1)+sum ;
}
}
long long sum2 = 0 ;
long long sum3 = 0 ;
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
for (int i = 1; i <= (n/2)-1 ; i++) {
sum2 += W(i)*W(n-i) ;
}
return (W(n/2)+W((n/2)+1))/2 + sum2 ;
}
if (n>0 &&n%2 != 0 && n!= 1 ) {
for (int i = 1; i <= ((n+1)/2)-1 ; i++) {
sum3 += W(i)*W(n-i) ;
}
return sum3 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0677, 2024-11-02 12:03:23, PxxP--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
long long sum = 0 ;
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
for(long long k = 1 ;k <= n-2 ; k++) sum += (S(k)+S(n-k-1)) ;
return 3*S(n-1)+sum ;
}
}
long long sum2 = 0 ;
long long sum3 = 0 ;
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
for (long long i = 1; i <= (n/2)-1 ; i++) {
sum2 += W(i)*W(n-i) ;
}
return (W(n/2)+W((n/2)+1))/2 + sum2 ;
}
if (n>0 &&n%2 != 0 && n!= 1 ) {
for (long long i = 1; i <= ((n+1)/2)-1 ; i++) {
sum3 += W(i)*W(n-i) ;
}
return sum3 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0678, 2024-11-02 12:06:39, PxxPxxPxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
long long sum = 0 ;
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
long long k = 1 ;
k++ ;
return 3*S(n-1)+(S(k)+S(n-k-1)) ;
}
}
long long sum2 = 0 ;
long long sum3 = 0 ;
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
long long i = 1; i++ ;
return (W(n/2)+W((n/2)+1))/2 + W(i)*W(n-i) ;
}
if (n>0 &&n%2 != 0 && n!= 1 ) {
long long i = 1 ;
i++ ;
return W(i)*W(n-i) ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0679, 2024-11-02 12:08:06, PxxP--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
long long sum = 0 ;
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
for(long long k ;k < n-2 ; k++) sum += (S(k)+S(n-k-1)) ;
return 3*S(n-1)+sum ;
}
}
long long sum2 = 0 ;
long long sum3 = 0 ;
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
for (long long i = 1; i < (n/2)-1 ; i++) {
sum2 += W(i)*W(n-i) ;
}
return (W(n/2)+W((n/2)+1))/2 + sum2 ;
}
if (n>0 &&n%2 != 0 && n!= 1 ) {
for (long long i = 1; i < ((n+1)/2)-1 ; i++) {
sum3 += W(i)*W(n-i) ;
}
return sum3 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0680, 2024-11-02 12:09:58, PxxP--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k == 0) {
return 1 ;
}
if( k > 1 && k <= n) T(n,k-1) + T(n-1,k-1) + T(n-1,k) ;
else if(k > n) return 0 ;
}
long long S(int n) { // Schroder Number
if (n == 0) return 1 ;
if (n == 1 ) return 2 ;
if (n >= 2) {
long long sum = 0 ;
for(long long k = 1 ;k < n-2 ; k++) sum += (S(k)+S(n-k-1)) ;
return 3*S(n-1)+sum ;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0 ;
}
if (n == 1) {
return 1 ;
}
if (n>0 &&n%2 == 0 ) {
long long sum2 = 0 ;
for (long long i = 1; i < (n/2)-1 ; i++) {
sum2 += W(i)*W(n-i) ;
}
return (W(n/2)+W((n/2)+1))/2 + sum2 ;
}
if (n>0 &&n%2 != 0 && n!= 1 ) {
long long sum3 = 0 ;
for (long long i = 1; i < ((n+1)/2)-1 ; i++) {
sum3 += W(i)*W(n-i) ;
}
return sum3 ;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0681, 2024-11-02 13:53:54, P--xxxxxx- (10%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if (k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n,k-1);
}
long long S(int n) { // Schroder Number
/*if(n==1)return 2;
if(n==0)return 1;
long long sum;
for(long long k=1; k<n-2: k++){
sum += S(k) * S(n-k-1);
}
return 3*S(n-1) + */
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0682, 2024-11-02 13:54:34, P--P------ (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if (k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n,k-1);
}
long long S(int n) { // Schroder Number
if(n==1)return 2;
if(n==0)return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0683, 2024-11-02 13:55:09, P--P--P--- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n) return 0;
if (k==0) return 1;
return T(n,k-1)+T(n-1,k-1)+T(n,k-1);
}
long long S(int n) { // Schroder Number
if(n==1)return 2;
if(n==0)return 1;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n==0)return 0;
if(n==1)return 1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0684, 2024-11-02 10:59:05, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > 1 && n >=k)
{
return T(n,k-1) + T(n-1,k-1) + T(n,k-1);
}
else if( k > n)
{
return 0;
}
else return 1;
}
long long S(int n) { // Schroder Number
if(n >= 2)
{
int smxn=0;
for(int i = 1 ; i <= n-2 ; i++)
{
smxn += S(i) * S(n-i-i);
}
return 3*S(n-1) + smxn;
}
else if (n == 0)
{
return 1;
}
else return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
else if (n == 1)
{
return 1;
}
else if (n % 2 == 0)
{
int smxn=0;
for(int i = 1 ; i <= (n/2)-1)
{
smxn += W(i) * W(n-i);
}
return ((W(n/2) * (W(n/2)+1)) / 2 ) + smxn;
}
else
{
int smxn=0;
for(int i = 1 ; i <= (n/2)-1)
{
smxn += W(i) * W(n-i);
}
return smxn;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0685, 2024-11-02 10:59:45, P--P--P--- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > 1 && n >=k)
{
return T(n,k-1) + T(n-1,k-1) + T(n,k-1);
}
else if( k > n)
{
return 0;
}
else return 1;
}
long long S(int n) { // Schroder Number
if(n >= 2)
{
int smxn=0;
for(int i = 1 ; i <= n-2 ; i++)
{
smxn += S(i) * S(n-i-i);
}
return 3*S(n-1) + smxn;
}
else if (n == 0)
{
return 1;
}
else return 2;
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
else if (n == 1)
{
return 1;
}
else if (n % 2 == 0)
{
int smxn=0;
for(int i = 1 ; i <= (n/2)-1;i++)
{
smxn += W(i) * W(n-i);
}
return ((W(n/2) * (W(n/2)+1)) / 2 ) + smxn;
}
else
{
int smxn=0;
for(int i = 1 ; i <= (n/2)-1;i++)
{
smxn += W(i) * W(n-i);
}
return smxn;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0686, 2024-11-02 12:11:11, P--PxxP--x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k > 1 && n >=k)
{
return T(n,k-1) + T(n-1,k-1) + T(n,k-1);
}
else if( k > n)
{
return 0;
}
else return 1;
}
long long S(int n) { // Schroder Number
if (n == 0)
{
return 1;
}
else if (n ==1)
{
return 2;
}
else if(n >= 2)
{
int smxn=0;
for(int i = 1 ; i <= n-2 ; i++)
{
smxn += S(i) * S(n-i-i);
}
return 3*S(n-1) + smxn;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0)
{
return 0;
}
else if (n == 1)
{
return 1;
}
else if (n % 2 == 0)
{
int smxn=0;
for(int i = 1 ; i <= (n/2)-1;i++)
{
smxn += W(i) * W(n-i);
}
return ((W(n/2) * (W(n/2)+1)) / 2 ) + smxn;
}
else
{
int smxn=0;
for(int i = 1 ; i <= (n/2)-1;i++)
{
smxn += W(i) * W(n-i);
}
return smxn;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0687, 2024-11-02 11:02:46, P--P--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1 && k<= n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n) return 0;
else if(k == 0) return 1;
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
else if(n == 1) return 2;
else if(n >= 2){
int a;
for (int i = 1; i < n-2; i++)
{
a += S(i)*S(n-i-1);
}
return (3*S(n-1))+a;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
else if (n == 1) return 1;
else if(n%2 == 0){
int a;
for (int i = 1; i < (n/2)-1; i++)
{
a += W(i)*W(n-i);
}
return ((W(n/2)*(W(n/2)+1))/2) + a;
}
else if (n%2 != 0){
int a;
for (int i = 0; i < ((n+1)/2)-1; i++)
{
a += W(i)*W(n-i);
}
return a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0688, 2024-11-02 11:07:30, P--P--Pxxx (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>1 && k<= n){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
else if(k>n) return 0;
else if(k == 0) return 1;
}
long long S(int n) { // Schroder Number
if(n == 0) return 1;
if(n == 1) return 2;
if(n >= 2){
long long a;
for (int i = 1; i < n-2; i++)
{
a += S(i)*S(n-i-1);
}
long long p = (3*S(n-1))+a;
return p;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n == 0) return 0;
if (n == 1) return 1;
else if(n%2 == 0){
long long a;
for (int i = 1; i < (n/2)-1; i++)
{
a += W(i)*W(n-i);
}
long long p = ((W(n/2)*(W(n/2)+1))/2) + a;
return p;
}
else if (n%2 != 0){
long long a;
for (int i = 0; i < ((n+1)/2)-1; i++)
{
a += W(i)*W(n-i);
}
return a;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0689, 2024-11-02 14:38:29, PPPxxxxxx- (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(k>n){
return 0;
}
if(k==0){
return 1;
}
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0690, 2024-11-02 10:37:36, P--PxxP--x (30%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k > 1 && k <= n) {
return T(n,k-1) + T(n-1,k-1) + (T(n-1,k));
}
else if (k > n) {
return 0;
}
else {
return 1;
}
}
long long S(int n) { // Schroder Number
long long t = 0;
if (n >= 2) {
for (int i = 1; i < n-2; ++i) {
t += S(i)*S(n-i-1);
}
t = 3*S(n-1);
}
else if (n == 0) {
return 1;
}
else if (n == 1) {
return 2;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if (n == 0) {
return 0;
}
else if (n ==1) {
return 1;
}
else if (n % 2 == 0) {
long long t1 = W(n/2)*(W(n/2)+1)/2;
long long t2 = 0;
for (int i = 1; i < (n/2) - 1; ++i) {
t2 += W(i)*W(n-i);
}
return t1 + t2;
}
else if (n % 2 != 0 && n > 1) {
long long t = 0;
for (int i = 1; i < ((n+1)/2)-1; ++i) {
t += W(i)*W(n-i);
}
return t;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0691, 2024-11-02 12:08:06, P--P------ (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n>=k && k>1){
return T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}else if(k>n){
return 0;
}else if(k==0){
return 1;
}
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}else if(n==1){
return 2;
}else if(n>=2){
int x = 0;
for(int i = 1;i<n-2;i++){
x+=S(i)*S(n-i-1);
}
return 3*S(n-1)+x;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n/2>=1){
int x = 0;
for(int i = 1; i<(n/2)-1;i++){
x+=W(i)*W(n-i);
}
return (W(n/2)*W(n/2)+1)/2 + x;
}
else if(n%2>=1){
int x = 0;
for(int i = 1;i<(n+1)/2 - 1;i++){
x+=W(i)*W(n-i);
}
return x;
}else if(n==0){
return 0;
}else if(n==1){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0692, 2024-11-02 12:08:52, PxxPxx-xxx (20%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(n>=k && k>1){
T(n,k-1)+T(n-1,k-1)+T(n-1,k);
}else if(k>n){
return 0;
}else if(k==0){
return 1;
}
}
long long S(int n) { // Schroder Number
if(n==0){
return 1;
}else if(n==1){
return 2;
}else if(n>=2){
int x = 0;
for(int i = 1;i<n-2;i++){
x+=S(i)*S(n-i-1);
}
3*S(n-1)+x;
}
}
long long W(int n) { // Wedderburn–Etherington Number
if(n/2>=1){
int x = 0;
for(int i = 1; i<(n/2)-1;i++){
x+=W(i)*W(n-i);
}
(W(n/2)*W(n/2)+1)/2 + x;
}
else if(n%2>=1){
int x = 0;
for(int i = 1;i<(n+1)/2 - 1;i++){
x+=W(i)*W(n-i);
}
return x;
}else if(n==0){
return 0;
}else if(n==1){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0693, 2024-11-02 13:38:11, xxxP--P--x (20%)
#include <iostream>
using namespace std;
long long T(int n, int k)
{ // Schroder Triangle
if(n > 0 && k ==0){
return 1;
}
if(k > n){
return 0;
}
if(1 < k && k <= n){
return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
}
long long S(int n)
{ // Schroder Number
if(n == 0){
return 1;
}
if(n == 1){
return 2;
}
if(n >= 2){
int sum = 0;
for(int i = 1; i < n-2; i++){
sum += S(i)*S(n-i-1);
}
return 3*S(n-1) + sum;
}
}
long long W(int n)
{ // Wedderburn–Etherington Number
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(n > 1){
if(n%2 == 0){
int res = 0;
for(int i =1; i < (n/2) - 1; i++){
res += W(i)*W(n-i);
}
return(W(n/2)*W(n/2) + 1)/2 + res;
}
else{
int res = 0;
for(int i = 1; i < (n+1)/2 - 1; i++){
res += W(i)*W(n-i);
}
return res;
}
}
}
int main()
{
string fn;
int p1, p2;
while (cin >> fn >> p1)
{
if (fn == "T")
{
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1, p2) << endl;
}
else if (fn == "S")
{
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
}
else if (fn == "W")
{
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0694, 2024-11-02 13:08:57, ---xxxTTTx (0%)
#include<iostream>
#include<cmath>
#include<vector>
#include<map>
#include<set>
#include<tuple>
#include<utility>
#include<algorithm>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
long long N[] = {n,k};
if(1<k<=n) {
return N[n,k-1] + N[n-1,k-1] + N[n-1,k];
}
if(k>n){
return 1;
}
return T(n,k);
}
long long S(int n) { // Schroder Number
long long M[] = {n};
if(n>=2){
(3*M[n-1]) + M[n -1 -1];
}
if(S(0)){
return 1;
}
if(S(1)){return 2;}
return S(n);
}
long long W(int n) { // Wedderburn–Etherington Number
long long K[]={n};
while(n%100 == 0){
((K[n/2] * (K[n/2] +1))/2) + K[n-1];
}
while(n%100 != 0){
K[n-1];
}
if(W(0)){
return 0;
}
if(W(1)){
return 1;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0695, 2024-11-02 13:11:03, ---x--P--- (10%)
#include<iostream>
#include<cmath>
#include<vector>
#include<map>
#include<set>
#include<tuple>
#include<utility>
#include<algorithm>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
long long N[] = {n,k};
if(1<k<=n) {
return N[n,k-1] + N[n-1,k-1] + N[n-1,k];
}
if(k>n){
return 1;
}
return T(n,k);
}
long long S(int n) { // Schroder Number
long long M[] = {n};
if(n>=2){
return (3*M[n-1]) + M[n -1 -1];
}
if(S(0)){
return 1;
}
if(S(1)){return 2;}
return S(n);
}
long long W(int n) { // Wedderburn–Etherington Number
long long K[]={n};
while(n%100 == 0){
return ((K[n/2] * (K[n/2] +1))/2) + K[n-1];
}
while(n%100 != 0){
return K[n-1];
}
if(W(0)){
return 0;
}
if(W(1)){
return 1;
}
return W(1);
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0696, 2024-11-02 10:01:57, TTTxxxxxxT (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(1<k<=n){
(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
cout<<0<<endl;
}
if(n,k=0){
cout<<1<<endl;
}
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0697, 2024-11-02 10:27:53, xxxxxxxxxx (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
/*if(1<k<=n){
(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
cout<<0<<endl;
}
if(n,k=0){
cout<<1<<endl;
}*/
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0698, 2024-11-02 10:38:48, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(1<k<=n){
(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
cout<<0<<endl;
}
if(n,k=0){
cout<<1<<endl;
}
}
long long S(int n){ // Schroder Number
if(n>=2){
3*S(n-1)+(S*k*S(n-k-1))
}
}
long long W(int n) { // Wedderburn–Etherington Number
W*(n/2)*(W*(n/2)+1)/2 + (W(i)W(n-i));
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0699, 2024-11-02 11:57:08, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if(1<k<=n){
(n,k-1)+T(n-1,k-1)+T(n-1,k);
}
if(k>n){
cout<<0<<endl;
}
if(n,k=0){
cout<<1<<endl;
}
}
long long S(int n){ // Schroder Number
if(n>=2){
3*S(n-1)+(S*k*S(n-k-1))
}
}
long long W(int n) { // Wedderburn–Etherington Number
(n/2)*(W*(n/2)+1)/2 + (W(i)W(n-i)) for n = 2,4,6,8;
(W(i)W(n-i)) for n = 3,5,7,9;
W(0)=0,W(1)=1;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0700, 2024-11-02 13:33:01, Compilation error (0%)
#include <bits/stdc++.h>
using namespace std;
long long sum1, sum2, sum3;
long long T(int n, int k) { // Schroder Triangle
if (k > n) cout << 0;
if (k = 0) cout << 1;
if (k > 1 && n>= k) return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(long long n) { // Schroder Number
if(n = 0) return 0;
if (n = 1) return 2;
if (n >= 2) {
for (int k = 1; k < n+1; k++) {
sum1 = S(k) * S(n-k-1);
sum1 += sum1;
}
return 3*S(n-1) + sum1;
};
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n = 0) return 0;
if (n = 1) return 2;
if (n%2 = 0) { for (int i = 1; i < (n / 2); i++) {
sum2 = W(i) * W(n-1);
sum2 += sum2;
}
return ((W(n/2) * ( W(n/2) + 1 )) / 2) + sum2 ;
};
if (n%2 = 1) { for (int i = 1; i < (n / 2); i++) {
sum3 = W(i) * W(n-1);
sum3 += sum3;
} return sum3;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0701, 2024-11-02 15:09:30, xxx------x (0%)
#include <bits/stdc++.h>
using namespace std;
long long sum1, sum2, sum3;
long long T(int n, int k) { // Schroder Triangle
if (k > n) cout << 0;
if (k = 0) cout << 1;
if (k > 1 && n>= k) return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(long long n) { // Schroder Number
if(n = 0) return 0;
if (n = 1) return 2;
if (n >= 2) {
for (int k = 1; k < n+1; k++) {
sum1 = S(k) * S(n-k-1);
sum1 += sum1;
}
return 3*S(n-1) + sum1;
};
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n = 0) return 0;
if (n = 1) return 2;
if (n % 2 == 0) { for (int i = 1; i < (n / 2); i++) {
sum2 = W(i) * W(n-1);
sum2 += sum2;
}
return ((W(n/2) * ( W(n/2) + 1 )) / 2) + sum2 ;
};
if (n %2 == 1) { for (int i = 1; i < (n / 2); i++) {
sum3 = W(i) * W(n-1);
sum3 += sum3;
} return sum3;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} | # 0702, 2024-11-02 15:13:50, xxx------x (0%)
#include <bits/stdc++.h>
using namespace std;
long long sum1, sum2, sum3;
long long T(int n, int k) { // Schroder Triangle
if (k > n) cout << 0;
if (k = 0) cout << 1;
if (k > 1 && n>= k) return T(n, k-1) + T(n-1, k-1) + T(n-1, k);
}
long long S(long long n) { // Schroder Number
if(n = 0) return 0;
if (n = 1) return 2;
if (n >= 2) {
for (int k = 1; k < n+1; k++) {
sum1 = S(k) * S(n-k-1);
sum1 += sum1;
}
return 3*S(n-1) + sum1;
};
}
long long W(long long n) { // Wedderburn–Etherington Number
if (n = 0) return 0;
if (n = 1) return 1;
if (n % 2 == 0) { for (int i = 1; i < (n / 2); i++) {
sum2 = W(i) * W(n-1);
sum2 += sum2;
}
return ((W(n/2) * ( W(n/2) + 1 )) / 2) + sum2 ;
};
if (n %2 == 1) { for (int i = 1; i < (n / 2); i++) {
sum3 = W(i) * W(n-1);
sum3 += sum3;
} return sum3;
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0703, 2024-11-02 12:39:43, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
}
long long S(int n) { // Schroder Number
}
long long W(int n) { // Wedderburn–Etherington Number
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0; | # 0704, 2024-11-02 12:45:20, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
else if (k,n) return 0;
else if ()
}
long long S(int n) { // Schroder Number
long long
long long
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum = 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0; | # 0705, 2024-11-02 12:54:04, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k) { // Schroder Triangle
if (k>n) return 0;
if (k=n) return 1;
if (k>1 && n>=k) return T(n,k-1) + T(n-1,k-1) + T(n−1,k);
}
long long S(int n) { // Schroder Number
long long
long long temp = 0
}
long long W(int n) { // Wedderburn–Etherington Number
long long sum = 0;
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0; |
# 0706, 2024-11-02 14:23:26, ---------- (0%)
#include <iostream>
#include<cmath>
using namespace std;
int main(){
int a;
string stri;
float m,b;
cin >> a >> stri;
double x,y;
float sum1,sum2,sum3,sum4,sum5;
while (cin >> x >> y)
{
float e = x*y;
sum1 += e;
sum2 += x;
sum3 += y;
float W = x*x;
sum4 += W;
float g = y*y;
sum5 += g;
}
m= (a*sum1 - sum2*sum3)/(sum4-sum5);
b= (sum3-sum2)/a;
m = round(m * 1e3)/1e3;
b = round(b * 1e3)/1e3;
if (stri == "mb" )
{
cout << m << endl;
cout << b << endl;
}
if (stri == "func" )
{
cout << "y = ";
if (m==0)
{cout << b << endl;}
else if (m==1)
{cout << "x" << endl;}
else if (m==-1)
{cout << "-x" << endl;}
cout << m << "x";
if (b!=0)
{if (b<0)
{cout << " " << "-" << " " << b <<endl;}
else{cout << " " << "+" << " " << b <<endl;}
}else{cout<<endl;}
}
return 0;
} | # 0707, 2024-11-02 14:33:53, ---------- (0%)
#include <iostream>
#include<cmath>
using namespace std;
int main(){
int a;
string stri;
float m,b;
cin >> a >> stri;
//double x,y;
double xa[a];
double ya[a];
float sum1,sum2,sum3,sum4,sum5;
for (int i = 0; i < a; i++)
{
cin >> xa[i];
cin >> ya[i];
}
/*while (cin >> x )
{
cin >> y;
float e = x*y;
sum1 += e;
sum2 += x;
sum3 += y;
float W = x*x;
sum4 += W;
float g = y*y;
sum5 += g;
}*/
for(int i=0; i <a ;i++)
{
float e = xa[i]*ya[i];
sum1 += e;
sum2 += xa[i];
sum3 += ya[i];
float W = xa[i]*xa[i];
sum4 += W;
float g = ya[i]*ya[i];
sum5 += g;
}
m= (a*sum1 - sum2*sum3)/(a*sum4-sum5);
b= (sum3-sum2)/a;
m = round(m * 1e3)/1e3;
b = round(b * 1e3)/1e3;
if (stri == "mb" )
{
cout << m << endl;
cout << b << endl;
}
if (stri == "func" )
{
cout << "y = ";
if (m==0)
{cout << b << endl;}
else if (m==1)
{cout << "x" << endl;}
else if (m==-1)
{cout << "-x" << endl;}
cout << m << "x";
if (b!=0)
{if (b<0)
{cout << " " << "-" << " " << b <<endl;}
else{cout << " " << "+" << " " << b <<endl;}
}else{cout<<endl;}
}
return 0;
} |
# 0708, 2024-11-02 14:28:26, Compilation error (0%)
#include <iostream>
using namespace std;
long long T(int n, int k){
if(k == 0) return 1;
if(k > 0) return 0;
if(k >= 1) T(n, k-1)+ T(n-1,k);
}
long long S(int n){
if(n == 0) return 1;
if(n == 1) return 2;
int sum = 3*S(n-1);
for(int s = 0;s <= n-2;s++){
sum += (s(k)s*(n-k-1));
}
return sum;
}
long long W(int n){
if(n == 0) return 0;
if(n == 1) return 1;
for (int n = 0; n < 0;n++){
sum += (w(i)w*(n-i));
}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |
# 0709, 2024-11-02 15:32:54, Compilation error (0%)
#include <iostream>
using namespace std;
int rett=0;
long long T(int n, int k) { // Schroder Triangle
if (k>n&&k!=0){return ret;}
else if (k==0){
rett=1;
return rett;}
else {
rett =T(n,k - 1) + T(n - 1, k - 1) + T(n - 1, k);
return rett;
}
return 0;
}
int ret=0,sum=0;
long long S(int n) { // Schroder Number
if(n==0){
ret=2;
return ret;
}
else if(n==1){
ret=1;
return ret;
}
else{ ret=3*S(n-1);
for(int i=0;i<n-2;i++){
sum+=S(i)*S(n-i-1);
}
ret+=sum;
return ret;
}
return 0;
}
int retw=0,sumw=0;
long long W(int n) { // Wedderburn–Etherington Number
if(n%2==0){
retw=W(n/1)*(W(n/2)+1)/2;
for(int i=0;i<n/2-1;i++){
sumw+=W(i)*W(n-1);
}
retw+=sumw;
return ret;
}
if(n%2==1){
for(int i=0;i<(n+1)/2-1;i++){
sumw+=W(i)*W(n-1);
}
retw=sum;
return ret;
}
if(n==0){return retw;}
if(n==0){retw =1;
return ret;}
}
int main() {
string fn;
int p1, p2;
while (cin >> fn >> p1) {
if (fn == "T") {
cin >> p2;
cout << fn << '(' << p1 << ',' << p2 << ") = " << T(p1,p2) << endl;
} else if (fn == "S") {
cout << fn << '(' << p1 << ") = " << S(p1) << endl;
} else if (fn == "W") {
cout << fn << '(' << p1 << ") = " << W(p1) << endl;
}
}
return 0;
} |