#include <stdio.h>
#include <iostream>
#include <set>
#include <map>
#include <queue>
#include <vector>
#include <string>
#include <math.h>
#include <algorithm>
using namespace std;
 
string num;
 
int main(void)
{
//    freopen("B1065_input.txt", "r", stdin);
    
    cin >> num;
    
    if(num.size() <= 2)
    {
        cout << num << endl;
    }
    else
    {
        int ans = 99;
        
        for(int i = 100; i <= stoi(num); i++)
        {
            string tempNum = to_string(i);
            int diff = tempNum[0]-tempNum[1];
            bool flag = true;
            
            for(int j = 0; j < tempNum.size()-1; j++)
            {
                if(tempNum[j]-tempNum[j+1!= diff)
                {
                    flag = false;
                    break;
                }
            }
            
            if(flag == true)
            {
                ans++;
            }
        }
        
        cout << ans << endl;
    }
    
    return 0;
}
cs
#include <stdio.h>
#include <iostream>
#include <set>
#include <map>
#include <queue>
#include <vector>
#include <string>
#include <math.h>
#include <algorithm>
using namespace std;
 
long long N;
long long length;
 
int main(void)
{
//    freopen("B1024_input.txt", "r", stdin);
    
    cin >> N >> length;
    
    if(length > 100)
    {
        cout << "-1" << endl;
    }
    else
    {
        bool flag = false;
        long long first, last; 
        
        for(long long i = length; i <= 100; i++)
        {    
            // 나누는 수가 짝수 
            if(i % 2 == 0)
            {
                if(N % i == i/2)
                {
                    first = N/i-(i/2-1);
                    last = N/i+(i/2);
                    
                    // 음이 아닌 정수 리스트 고려
                    if(first < 0)
                    {
                        continue;
                    }
                    else
                    {
                        flag = true;
                        break;    
                    }
                }
            }    
            // 나누는 수가 양수
            else
            {
                if(N % i == 0)
                {
                    first = N/i-(i/2);
                    last = N/i+(i/2);
                    
                    // 음이 아닌 정수 리스트 고려 
                    if(first < 0)
                    {
                        continue;
                    }
                    else
                    {
                        flag = true;
                        break;    
                    }
                }
            }
        }
        
        if(flag == false)
        {
            cout << "-1" << endl;
        }
        else
        {
            for(long long i = first; i <= last; i++)
            {
                cout << i << " ";
            }
        }
    }
    
    return 0;
}
cs
#include <stdio.h>
#include <iostream>
#include <set>
#include <map>
#include <queue>
#include <vector>
#include <string>
#include <math.h>
#include <algorithm>
using namespace std;
 
typedef struct node
{
    int num;
    int idx;
}node;
 
node A[55];
int P[55];
int N;
 
bool cmp(node A, node B)
{
    if(A.num < B.num)
    {
        return true;
    }
    else if(A.num == B.num)
    {
        if(A.idx < B.idx)
        {
            return true;
        }
        else
        {
            return false;    
        }
    }
    else
    {
        return false;
    }
}
 
int main(void)
{
//    freopen("B1015_input.txt", "r", stdin);
    
    cin >> N;
    
    for(int i = 0; i < N; i++)
    {
        cin >> A[i].num;
        A[i].idx = i;
    }
    
    sort(A, A+N, cmp);
    
    for(int i = 0; i < N; i++)
    {
        for(int j = 0; j < N; j++)
        {
            if(i == A[j].idx)
            {
                P[i] = j;
            }
        }
    }
    
    for(int i = 0; i < N; i++)
    {
        cout << P[i] << " ";
    }
    
    return 0;
}
cs

+ Recent posts