1~N 까지의 숫자중 모두 한번씩 사용하여 출력하는 방법.
c)
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void printRandRange(int N){
int i, tmp, *memo;
srand(time(NULL));
memo = (int*)malloc(sizeof(int)*N);
for(i=0;i<N;i++){
memo[i] = 0;
}
for(i=0;i<N;i++){
do{
tmp = rand()%N;
}while(memo[tmp]);
memo[tmp] = 1;
printf("%d : -> %dn", i+1, tmp+1);
}
free(memo);
}
int main(void){
int N;
scanf("%d", &N);
printRandRange(N);
return 0;
}
python)
import random
N=int(input())
print(random.sample(range(1, N+1), N))
갓갓 파이썬
갓갓ㅋㅋㅋ 국비갓 ㄱㅋㅋㅋㅋㄲ 보아뱀 갓 ㄲ