#include <iostream>
#include <string>
#include <cstdarg>
void print(std::string s, ...)
{
int len = s.length();
int pSum = 0;
for (int i = 0; i < len; i++)
{
if (s[i] == '%' && i < len - 1)
{
char c = s[i + 1];
if (c == 'd' || c == 'i' || c == 's') pSum++;
}
}
va_list ap; // Initialization of the VA list
va_start(ap, s); // Start iterating through the VA list
int r;
for (int i = 0; i < len; i++)
{
if (s[i] == '%' && i < len - 1) // Check for % in the string
{
char c = s[i + 1];
if (c == 'i')
{
r = va_arg(ap, int);
std::cout << r;
i++;
}
}
else std::cout << s[i];
}
va_end(ap); // Stop iterating over the VA list
}
int main() {
print("The number %i is the only even prime number.", 2);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8Y3N0ZGFyZz4KCnZvaWQgcHJpbnQoc3RkOjpzdHJpbmcgcywgLi4uKQp7CiAgICBpbnQgbGVuID0gcy5sZW5ndGgoKTsKICAgIGludCBwU3VtID0gMDsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbGVuOyBpKyspCiAgICB7CiAgICAgICAgaWYgKHNbaV0gPT0gJyUnICYmIGkgPCBsZW4gLSAxKQogICAgICAgIHsKICAgICAgICAgICAgY2hhciBjID0gc1tpICsgMV07CiAgICAgICAgICAgIGlmIChjID09ICdkJyB8fCBjID09ICdpJyB8fCBjID09ICdzJykgcFN1bSsrOwogICAgICAgIH0KICAgIH0KICAgIHZhX2xpc3QgYXA7IC8vIEluaXRpYWxpemF0aW9uIG9mIHRoZSBWQSBsaXN0CiAgICB2YV9zdGFydChhcCwgcyk7IC8vIFN0YXJ0IGl0ZXJhdGluZyB0aHJvdWdoIHRoZSBWQSBsaXN0CiAgICBpbnQgcjsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbGVuOyBpKyspCiAgICB7CiAgICAgICAgaWYgKHNbaV0gPT0gJyUnICYmIGkgPCBsZW4gLSAxKSAvLyBDaGVjayBmb3IgJSBpbiB0aGUgc3RyaW5nCiAgICAgICAgewogICAgICAgICAgICBjaGFyIGMgPSBzW2kgKyAxXTsKICAgICAgICAgICAgaWYgKGMgPT0gJ2knKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByID0gdmFfYXJnKGFwLCBpbnQpOwogICAgICAgICAgICAgICAgc3RkOjpjb3V0IDw8IHI7CiAgICAgICAgICAgICAgICBpKys7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZWxzZSBzdGQ6OmNvdXQgPDwgc1tpXTsKICAgIH0KICAgIHZhX2VuZChhcCk7IC8vIFN0b3AgaXRlcmF0aW5nIG92ZXIgdGhlIFZBIGxpc3QKfQppbnQgbWFpbigpIHsKICAgIHByaW50KCJUaGUgbnVtYmVyICVpIGlzIHRoZSBvbmx5IGV2ZW4gcHJpbWUgbnVtYmVyLiIsIDIpOwoKICAgIHJldHVybiAwOwp9Cg==