#include <iostream>
#include <cstdint>
using namespace std;
enum class AdcConfig : uint8_t{
ChannelEnable = 1,
InterruptEnable = 2,
DMAEnable = 4};
void printConfig(uint8_t cfg){
switch(cfg){
case 0: cout << "None"; break;
case 1: cout << "DMAEnable"; break;
case 2: cout << "InterruptEnable"; break;
case 3: cout << "InterruptEnable DMAEnable"; break;
case 4: cout << "ChannelEnable"; break;
case 5: cout << "ChannelEnable DMAEnable"; break;
case 6: cout << "ChannelEnable InterruptEnable"; break;
case 7: cout << "ChannelEnable InterruptEnable DMAEnable"; break;
}
}
int main() {
int ch, intr, dma;
cin >> ch >> intr >> dma;
uint8_t cfg = 0;
if (ch) cfg |= static_cast<uint8_t>(AdcConfig::ChannelEnable);
if (intr) cfg |= static_cast<uint8_t>(AdcConfig::InterruptEnable);
if (dma) cfg |= static_cast<uint8_t>(AdcConfig::DMAEnable);
printConfig(cfg);
return 0;
}
Input
1 0 1
Expected Output
ChannelEnable DMAEnable