반응형
1090 : [기초-종합] 수 나열하기2
#include<stdio.h>
int main(){
long long int a,b,c;
scanf("%lld %lld %lld",&a,&b,&c);
for(int j = 1; j <c; j++){
a *= b;
}
printf("%lld",a);
return 0;
}
시작값에 등비값을 곱하고 저장하고 거기에 또 곱하고를 반복하다 출력한다.
1091 : [기초-종합] 수 나열하기3
#include<stdio.h>
int main(){
int a, b, c, d, i;
scanf("%d %d %d %d",&a,&b,&c,&d);
for(i=1; i<d; i++){
a = a * b + c;
}
printf("%d",a);
return 0;
}
나열한 수를 곱한다은 더할값을 더해서 a에 계속 저장해준다.
1092 : [기초-종합] 함께 문제 푸는 날(설명)
#include<stdio.h>
int main(){
int a, b, c, i=1;
scanf("%d %d %d",&a,&b,&c);
while(i%a!=0||i%b!=0||i%c!=0) i++;
printf("%d",i);
return 0;
}
간단하게 ||를 사용해주면 된다.
1093 : [기초-1차원배열] 이상한 출석 번호 부르기1(설명)
#include<stdio.h>
int main(){
int a, b, i, j[24]={};
scanf("%d",&a);
for(i=1; i<=a; i++){
scanf("%d ", &b);
j[b]=j[b]+1;
}
for(i=1; i<=23; i++){
printf("%d ", j[i]);
}
return 0;
}
공백을 두고 입력받기 위해 for문을 통해 scanf를 받았고, 배열을 만들어서 23까지의 번호를 입력받았다.
1094 : [기초-1차원배열] 이상한 출석 번호 부르기2(설명)
#include<stdio.h>
int main(){
int a, b, i, j[10001]={};
scanf("%d",&a);
for(i=1; i<=a; i++){
scanf("%d", &b);
j[i]=b;
}
for(i=a; i>=1; i--){
printf("%d ", j[i]);
}
return 0;
}
순서만 바꿔서 출력해주면 된다.
1095 : [기초-1차원배열] 이상한 출석 번호 부르기3(설명)
#include<stdio.h>
int main(){
int a, b, c, i, j[10001]={};
scanf("%d",&a);
scanf("%d",&c);
for(i=1; i<a; i++){
scanf("%d", &b);
if(c>b){
c=b;
}
}
printf("%d",c);
return 0;
}
for문에서 if를 통해 작은 숫자만 저장되고, 다음 for문에서는 전에 저장했던 숫자와 비교하게 했다.
그렇게 나온 가장 작은 숫자가 출력된다.
1096 : [기초-2차원배열] 바둑판에 흰 돌 놓기(설명)
#include<stdio.h>
int a, b, i, j, n;
int map[20][20];
int main(){
scanf("%d", &n);
for(i=0; i<n; i++){
scanf("%d%d", &a, &b);
map[a][b] = 1;
}
for(i=1; i<=19; i++){
for(j=1; j<=19; j++){
printf("%d ", map[i][j]);
}
printf("\n");
}
return 0;
}
출력하는 부분 첫 for문이 한줄씩 위에서 아래로,
두번째 문이 한열씩 값을 출력하고 \n으로 줄을 바꾸게 되는 프로그램이다.
1097 : [기초-2차원배열] 바둑알 십자 뒤집기(설명)
#include<stdio.h>
int main()
{
int a[20][20], x, y, i, j, n;
for(i=1 ; i<=19 ; i++)
{
for(j=1 ; j<=19 ; j++)
{
scanf("%d",&a[i][j]);
}
}
scanf("%d",&n);
for(i=1 ; i<=n ; i++)
{
scanf("%d %d",&x,&y);
for(j=1 ; j<=19 ; j++)
{
if(a[x][j]==0) a[x][j]=1;
else a[x][j]=0;
}
for(j=1 ; j<=19 ; j++)
{
if(a[j][y]==0) a[j][y]=1;
else a[j][y]=0;
}
}
for(i=1 ; i<=19 ; i++)
{
for(j=1 ; j<=19 ; j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
}
한줄씩 바둑판 상황을 입력받은 후 좌표개수를 입력받고,
입력받은 좌표의 개수만큼 가로줄(흑, 백)을 바꾸고,
세로줄 흑,백을 바꿔준 뒤 출력을 하게된다.
1098 : [기초-2차원배열] 설탕과자 뽑기
#include<stdio.h>
int main()
{
int h, w, n, l, d, x, y, i, j;
int a[101][101]={0};
scanf("%d %d",&h,&w);
scanf("%d",&n);
for(i=1 ; i<=n ; i++)
{
scanf("%d %d %d %d",&l,&d,&x,&y);
if(l==1)
if(a[x][y]==0) a[x][y]=1;
if(l!=1)
{
if(d==0)
for(j=1 ; j<=l ; j++)
a[x][y+j-1]=1;
else if(d==1)
for(j=1 ; j<=l ; j++)
a[x+j-1][y]=1;
}
}
for(i=1 ; i<=h ; i++)
{
for(j=1 ; j<=w ; j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
}
입력받은 격자판에 두번쨰, 3번째에서 받은 막대에서 가려진 막대에서 1, 안가려진건 0으로 출력하게 만들었다.
1099 : [기초-2차원배열] 성실한 개미
#include<stdio.h>
int main()
{
int map[11][11],x=2,y=2,i,j;
for(i=1;i<=10;i++)
for(j=1;j<=10;j++)
scanf("%d",&map[i][j]);
while(map[x][y]!=2)
{
map[x][y]=9;
if(map[x][y+1]!=1) y+=1;
else if(map[x+1][y]!=1) x+=1;
else break;
}
map[x][y]=9;
for(i=1;i<=10;i++)
{
for(j=1;j<=10;j++)
printf("%d ",map[i][j]);
printf("\n");
}
return 0;
}
1010 크기로 입력을 받게 해주고
이동한 경로를 9로 출력해주었다.
반응형
'P4C' 카테고리의 다른 글
ProjectH4C 2기 코딩도장 Unit 35 (0) | 2020.07.27 |
---|---|
ProjectH4C 2기 코딩도장 Unit 34 (0) | 2020.07.26 |
ProjectH4C 2기 Codeup 81 ~ 90 (0) | 2020.07.19 |
ProjectH4C 2기 Codeup 71 ~ 80 (0) | 2020.07.19 |
ProjectH4C 2기 Codeup 61 ~ 70 (0) | 2020.07.17 |