DPCM 압축 ¶
~cpp 
#include <iostream>
#include<string>
using namespace std;
int main()
{
	string input;
	cin  >> input;
	cout << input[0];
	for(int i=0;i<input.size() ;i++)
	{
		cout << (int)(input[i] - input[0]);
		
	}
}
DPCM 압축 업데이트 ¶
~cpp 
#include <iostream>
#include<string>
using namespace std;
int main()
{
	string input;
	cin  >> input;
	cout << input[0];
	char standard = input[0];
	
	for(int i=0;i<input.size() ;i++)
	{
		if((int)(input[i] - standard)<10)
			cout << (int)(input[i] - standard);
		else
		{
			standard = input[i];
			cout << standard;
			cout << (int)(input[i] - standard);
		}
		
	}
}
DPCM 해제 ¶
~cpp 
#include <iostream>
#include<string>
using namespace std;
int main()
{
	string input;
	cin  >> input;
	for(int i=1;i<input.size();i++)
	{
		cout << (char)(input[0] + (input[i] - '0'));
	}
	cout << endl;
}
DPCM 해제 업그레이드 ¶
~cpp 
#include <iostream> 
#include<string> 
using namespace std; 
int main() 
{ 
        string input; 
        cin  >> input; 
		char standard = input[0];
        for(int i=1;i<input.size();i++) 
        { 
			if(input[i]>='0' && input[i]<='9')
                cout << (char)(standard + (input[i] - '0')); 
			else
			{
				standard = input[i];
				cout<<(char)standard;
				//cout << (char)(standard + (input[i] - '0'));
			}
        } 
        cout << endl; 
}













