#include <iostream>

using namespace std;

int main(void)
{
	int N = 0;
	char array = {0,};
	
	cin >> N;
	
	if (N>=1 and N<=100)
	{
		for (int i=1; i<=N; i++) // N번째 줄 
		{
			for (int j=1; j<=i; j++) // N개의 별 
			{
				cout << "*";
			}
			cout << '\n';
		}
	}
	
	return 0;
}

오답

import sys
input = sys.stdin.readline

def get_dwarfs(start):
    if len(picked) == 7 and sum(picked) == 100:
        for i in picked:
            print (i)
        return 
    for i in range(start, len(heights)):
        picked.append(heights[i])
        get_dwarfs(i+1)
        picked.pop()
            
heights = []
picked = []
for _ in range(9):
    heights.append(int(input()))
get_dwarfs(0)

 

정답

import sys
input = sys.stdin.readline

def get_dwarfs():
    if len(picked) == 7 and sum(picked) == 100:
        picked.sort()
        for i in picked:
            print (i)
        exit() 
    
    for i in range(len(heights)):
        if heights[i] not in picked:
            picked.append(heights[i])
            get_dwarfs()
            picked.pop()
            
heights = []
picked = []
for _ in range(9):
    heights.append(int(input()))
get_dwarfs()

오답

N = int(input())
_sum = 0
_lists = []
for i in range(1, N):
    for j in str(i):
        _sum += int(j)
    if _sum + i == N:
        _lists.append(i)
    else:
        _sum = 0
print (min(_lists))

 

오답2

N = int(input())
_sum = 0
_lists = []
for i in range(1, N):
    b = list(map(int, list(str(i))))
    _sum = sum(b)
    if _sum + i == N:
        _lists.append(i)
    else:
        _sum = 0
print (min(_lists))

 

 

정답

from collections import deque

def fail():
    for i in range(N):
        if len(queue) > 1:
            del queue[0]
            temp = queue[0]
            del queue[0]
            queue.append(temp)
        else:
            print (queue[0])

def success(queue):
    for i in range(len(queue)):
        if len(queue) == 1:
            print (queue[0])
            break
        queue.popleft()
        queue.append(queue[0])
        queue.popleft()

if __name__ == "__main__":
    N = int(input())
    queue = deque([i for i in range(1, N + 1)])
    success(queue)
from collections import deque

def fail():
    for i in range(N):
        if len(queue) > 1:
            del queue[0]
            temp = queue[0]
            del queue[0]
            queue.append(temp)
        else:
            print (queue[0])

def success(queue):
    for i in range(len(queue)):
        if len(queue) == 1:
            print (queue[0])
            break
        queue.popleft()
        queue.append(queue[0])
        queue.popleft()

if __name__ == "__main__":
    N = int(input())
    queue = deque([i for i in range(1, N + 1)])
    success(queue)

오답

import sys
from collections import Counter
input = sys.stdin.readline

def get_most_freq_value(nums):
    cnt = Counter(nums)
    try:
        check = cnt.most_common(2)
        if check[0][1] < check[1][1]: # 개수가 적다면
            return check[0][0]
        
        elif check[0][1] == check[1][1]: # 개수가 같다면
            return check[1][0]

    except IndexError:
        check = cnt.most_common(1)
        return check[0][0]

def get_value_range(nums):
    if len(nums) == 1:
        return 0
    else:
        return (nums[-1] - nums[0])

N = int(input())
nums = []
for _ in range(N):
    nums.append(int(input()))
nums.sort()
print (round(sum(nums)/len(nums))) # 산술평균
print (nums[int(len(nums)/2)]) # 중앙값
print (get_most_freq_value(nums)) # 최빈값
print (get_value_range(nums)) # 범위

 

정답

import sys
from collections import Counter
input = sys.stdin.readline

def get_most_freq_value(nums):
    cnt = Counter(nums).most_common()
    if len(nums) > 1:
        if cnt[0][1] == cnt[1][1]:
            return cnt[1][0]
        else:
            return cnt[0][0]
    else:
        return cnt[0][0]

N = int(input())
nums = []
for _ in range(N):
    nums.append(int(input()))
nums.sort()
print (round(sum(nums)/len(nums))) # 산술평균
print (nums[int(len(nums)/2)]) # 중앙값
print (get_most_freq_value(nums)) # 최빈값
print (max(nums) - min(nums)) # 범위

 

import sys

def preorder_traversal(root):
    if root != '.':
        print (root, end='')
        preorder_traversal(tree[root][0]) # left
        preorder_traversal(tree[root][1]) # right

def inorder_traversal(root):
    if root != '.':
        inorder_traversal(tree[root][0])
        print (root, end='')
        inorder_traversal(tree[root][1])


def postorder_traversal(root):
    if root != '.':
        postorder_traversal(tree[root][0])
        postorder_traversal(tree[root][1])
        print (root, end='')


input = sys.stdin.readline
N = int(input())
tree = {}

for _ in range(N):
    root, left, right = input().split()
    tree[root] = [left, right]

preorder_traversal('A')
print ()
inorder_traversal('A')
print ()
postorder_traversal('A')
#include <iostream>

using namespace std;

int main(void)
{
	int N = 0;
	int num = 0;
	int count = 0;
	int sum = 0;
	
	cin >> N;
	
	if (N<=100) // initial condition
	{
		for (int i=0; i<N; i++)
		{
			cin >> num;
			
			if (num<=1000)
			{
				for (int j=1; j<=num; j++)
				{
					if (num % j == 0)
					{
						count = count + 1;
					}
				}
				
				if (count == 2)
					sum = sum + 1;
					count = 0;
			}
		}
		
		cout << sum << endl;
	}
	
	
	return 0;
}
N = int(input())
post_expression = input()
nums = [int(input()) for _ in range(N)]
stack = []
items = dict()

for i in post_expression:
    if i in "*/+-":
        a = stack.pop()
        b = stack.pop()
        if i == "*":
            stack.append(b*a)
        elif i == "/":
            stack.append(b/a)
        elif i == "+":
            stack.append(b+a)
        elif i == "-":
            stack.append(b-a)
    else:
        stack.append(nums[ord(i)-ord('A')])

print (format(stack[0], ".2f"))

 

 

#include <iostream>
using namespace std;

void getSnail(int N, int Want)	
{
	int tmp = N;
	int row = -1;
	int col = 0;
	int dir = 1;
	int x = 0, y = 0;
	int Square = N * N;

	int** arr;
	arr = new int* [N];
	for (int i = 0; i < N; i++) arr[i] = new int[N];

	if (N >= 3 and N <= 999 and N % 2 == 1)
	{
		while (tmp > 0)
		{
			for (int i = 0; i < tmp; i++)
			{
				row = row + dir;
				arr[row][col] = Square;

				if (Square == Want)
				{
					x = row + 1;
					y = col + 1;
				}
				Square--;
			}
			tmp--;

			for (int i = 0; i < tmp; i++)
			{
				col = col + dir;
				arr[row][col] = Square;
				if (Square == Want)
				{
					x = row + 1;
					y = col + 1;
				}
				Square--;
			}

			dir = dir * (-1);
		}

		for (int i = 0; i < N * N; i++)
		{
			int r = i / N;
			int c = i % N;
			cout << arr[r][c] << " ";
			if ((i % N) == N - 1) cout << endl;
		}

		cout << x << " " << y << endl;

		for (int i = 0; i < N; i++) delete[] arr[i];
		delete[] arr;
	}
}


int main(void)
{
	int N = 0, Want = 0;
	cin >> N;
	cin >> Want;

	getSnail(N, Want);
	return 0;
}
def is_multiple_of_three(N, cnt):
    if len(N) == 1:
        if int(N) % 3 == 0:
            print (cnt)
            print ("YES")
        else:
            print (cnt)
            print ("NO")
        return
    
    _sum = 0
    for i in N:
        _sum += int(i)
    
    is_multiple_of_three(str(_sum), cnt+1)

if __name__ == "__main__":
    N = input()
    is_multiple_of_three(N, 0)

 

+ Recent posts