top of page

게시판 게시물

tg1028
2022년 12월 07일
In 소스 코드 제출
/*#include <stdio.h> int isprime(int n) { int cnt=0; for(int i=1; i<=n; i++){ if(n%i==0){ cnt++; } } if(cnt==2){ return 1; } else{ return 0; } } int main() { int i,j,a,b,n; scanf("%d",&n); for(i=2; i<=n-1; i++){ if(n%i==0){ if(isprime(n/i)==1&&isprime(i)==1){ a=i; b=n/i; printf("%d %d",a,b); return 0; } } } printf("wrong number"); return 0; } #include <stdio.h> int main() { int a,n,i,sum=0,rev=0; scanf("%d",&n); for(;;){ a=n%10; n=n/10; sum+=a; rev=rev*10+a; if(n==0){ break; } } printf("%d\n",rev); printf("%d",sum); return 0; } 0~5 3 ~8 a 0 1 2 3 4 5 6 7 8 9 10 11 12 13 a%6 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 a%6+3 3 4 5 6 7 8 3 4 5 6 7 8 65 ~ 90 90%26+65 #include <stdio.h> #include<string.h> int main() { int k,i,n; char arr[21]={},arr1[21]={},c; scanf("%d %s",&k,arr); n=strlen(arr); for(i=0; i<n; i++){ if(arr[i]-65<((i+1)*3+k)) { c=arr[i]-((i+1)*3+k)+26; } else { c=arr[i]-((i+1)*3+k); } arr1[i]=c; } for(i=0; i<n; i++){ printf("%c",arr1[i]); } } #include <stdio.h> int main() { int i,k,arr[11]; double a,n,b; scanf("%lf %d",&n,&k); b=n; for(i=1; i<=k; i++){ scanf("%d",&arr[i]); } for(i=1; i<=k; i++){ a=(arr[i]+100)/100.0*n; n=a; } n=b; if(-(n-a)==0){ printf("0"); } else{ printf("%.0lf",-(n-a)); } printf("\n"); if(-(n-a)<0){ printf("bad"); } else if(-(n-a)>0){ printf("good"); } else if(-(n-a)==0){ printf("same"); } return 0; } */
0
0
2
tg1028
2022년 11월 30일
In 소스 코드 제출
/* #include <stdio.h> char arr[10][10]={}; int a,b; void dfs(int i,int j) { if(i<0 || i>=10 || j<0 || j>=10||arr[i][j]=='*') return; arr[i][j]='*'; dfs(i+1,j); dfs(i-1,j); dfs(i,j+1); dfs(i,j-1); } int main() { int i,j; for(i=0; i<10; i++){ for(j=0; j<10; j++){ scanf("%c ",&arr[i][j]); } } scanf("%d %d",&a,&b); dfs(b,a); for(i=0; i<10; i++){ for(j=0; j<10; j++){ printf("%c",arr[i][j]); } printf("\n"); } return 0; } #include <stdio.h> int m,n,k,min,temp; int i,j; int cnt=0; int arr1[1000]={}; int arr[101][101]={}; void o() { for(i=1; i<cnt; i++){ min=i; for(j=i+1; j<=cnt; j++){ if(arr1[min]>arr1[j]){ min=j; } } temp=arr1[i]; arr1[i]=arr1[min]; arr1[min]=temp; } for(i=1; i<=cnt; i++){ printf("%d ",arr1[i]); } } void dfs(int i,int j) { if(i>=n || i<0 || j>=m || j<0 || arr[i][j]!=0) return; arr1[cnt]++; arr[i][j]=1; dfs(i+1,j); dfs(i-1,j); dfs(i,j+1); dfs(i,j-1); } int main() { int f; int a,b,c,d; scanf("%d %d %d",&m,&n,&k); for(f=1; f<=k; f++){ scanf("%d %d %d %d",&a,&b,&c,&d); for(i=a; i<c; i++){ for(j=b; j<d; j++){ arr[i][j]=1; } } } for(i=0; i<n; i++){ for(j=0; j<m; j++){ if(arr[i][j]==0){ cnt++; dfs(i,j); } } } printf("%d\n",cnt); for(i=1; i<=cnt; i++){ o(arr1[i]); } return 0; } */ //#include <stdio.h> //#include <string.h> //int main() //{ // int k,i,n; // char arr[21]={}; // scanf("%d %s",&k,arr); // n=strlen(arr); // for(i=0; arr[i]!=NULL; i++) // { // // } //} /*#include <stdio.h> #include <string.h> int main() { int i,n; char arr[101]={}; gets(arr); n=strlen(arr); for(i=n-1; i>=0; i--){ printf("%c",arr[i]); } return 0; } */
0
0
4
tg1028
2022년 11월 23일
In 소스 코드 제출
/*#include <stdio.h> int n; int arr[101][101]={}; void dfs(int i,int j,int a) { if(arr[i][j]<=a || i>n || i<=0 || j>n|| j<=0) return; arr[i][j]=0; dfs(i,j+1,a); dfs(i,j-1,a); dfs(i+1,j,a); dfs(i-1,j,a); } int main() { int i,j,a; int cnt=0,min=100,max=0,maxcnt=1,b[101][101]={}; scanf("%d",&n); for(i=1; i<=n; i++){ for(j=1; j<=n; j++){ scanf("%d",&arr[i][j]); b[i][j]=arr[i][j]; if(arr[i][j]>max){ max=arr[i][j]; } if(arr[i][j]<min){ min=arr[i][j]; } } } for(a=min; a<=max; a++){ cnt=0; for(i=1; i<=n; i++){ for(j=1; j<=n; j++){ if(arr[i][j]>a){ cnt++; dfs(i,j,a); } } } if(maxcnt<cnt){ maxcnt=cnt; } for(i=1; i<=n; i++){ for(j=1; j<=n; j++){ arr[i][j]=b[i][j]; } } } printf("%d",maxcnt); return 0; } #include <stdio.h> int arr[101][101]={}; int a,b; void dfs1(int i,int j) { if(i>a || i<1 || j>b || j<1||arr[i][j]!=0) return; arr[i][j]=1; dfs1(i+1,j); dfs1(i-1,j); dfs1(i,j+1); dfs1(i,j-1); } void dfs2(int i,int j) { if(i>a || i<1 || j>b || j<1 || arr[i][j]!=1) return; arr[i][j]=0; dfs2(i+1,j); dfs2(i-1,j); dfs2(i,j+1); dfs2(i,j-1); } int main() { int i,j; int cnt1=0,cnt2=0,c[101][101]={}; scanf("%d %d",&a,&b); for(i=1; i<=a; i++){ for(j=1; j<=b; j++){ scanf("%d",&arr[i][j]); c[i][j]=arr[i][j]; } } for(i=1; i<=a; i++){ for(j=1; j<=b; j++){ if(arr[i][j]==0) { cnt1++; dfs1(i,j); } } } printf("%d ",cnt1); for(i=1; i<=a; i++){ for(j=1; j<=b; j++){ arr[i][j]=c[i][j]; } } for(i=1; i<=a; i++){ for(j=1; j<=b; j++){ if(arr[i][j]==1){ cnt2++; dfs2(i,j); } } } printf("%d",cnt2); }
0
0
3
tg1028
2022년 11월 09일
In 소스 코드 제출
/*#include <stdio.h> char arr[26]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'}; void f(int n) { if(n==0) return; else { f((n-1)/26); printf("%c",arr[(n-1)%26]); } } int main() { int n; scanf("%d",&n); f(n); return 0; } #include <stdio.h> int a,b,arr[101][101]={}; int v[101]={}; void dfs(int node) { v[node]=1; for(int i=1; i<=a; i++){ if(arr[node][i]==1&&v[i]!=1){ dfs(i); } } } int main() { int x, y,i,j,sum=0; scanf("%d %d",&a,&b); for(i=1; i<=b; i++){ scanf("%d %d",&x,&y); arr[x][y]=1; arr[y][x]=1; } dfs(1); for(i=1; i<=a; i++){ if(v[i]==1){ sum++; } } printf("%d",sum-1); return 0; } #include <stdio.h> int n,arr[26][26]={},cnt=0; int danji[500]={}; void dfs(int i, int j) { if(i<1||j<1|| i>n||j>n||arr[i][j]!=1) return ; danji[cnt]++; arr[i][j]=0; dfs(i,j+1); dfs(i,j-1); dfs(i+1,j); dfs(i-1,j); } int main() { int a[1000],i,j,temp,x,y; scanf("%d",&n); for(i=1; i<=n; i++){ for(j=1; j<=n; j++){ scanf("%1d",&arr[i][j]); } } for(i=1; i<=n; i++){ for(j=1; j<=n; j++){ if(arr[i][j]==1) { cnt++; dfs(i,j); } } } for(i=1; i<=cnt; i++){ a[i]=danji[i]; } for(i=1; i<cnt; i++){ for(j=1; j<=cnt-i; j++){ if(a[j] > a[j+1]){ temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } printf("%d\n",cnt); for(i=1;i<=cnt;i++) { printf("%d\n",a[i]); } return 0; } /* for(int a=-1;a<=1;a++) for(int b=-1;b<=1;b++) dfs(i+a,j+b); #include <stdio.h> char arr[101][101]={}; int w,h; void dfs(int i,int j) { if(i<1 || j<1 || i>h || j>w || arr[i][j]!='L') return; arr[i][j]='.'; dfs(i,j+1); dfs(i,j-1); dfs(i+1,j); dfs(i-1,j); dfs(i+1,j+1); dfs(i-1,j+1); dfs(i+1,j-1); dfs(i-1,j-1); } int main() { int i,j,cnt=0; scanf("%d %d",&w,&h); for(i=1; i<=h; i++){ for(j=1; j<=w; j++){ scanf(" %c",&arr[i][j]); } } for(i=1; i<=h; i++){ for(j=1; j<=w; j++){ if(arr[i][j]=='L'){ cnt++; dfs(i,j); } } } printf("%d",cnt); return 0; } #include <stdio.h> int num=0,arr[8][8]={},color=0; void dfs(int i,int j) { if(i<1||j<1||i>7||j>7||arr[i][j]!=color) return; arr[i][j]=0; num++; dfs(i+1,j); dfs(i-1,j); dfs(i,j+1); dfs(i,j-1); } int main() { int i,j,cnt=0; for(i=1; i<=7; i++){ for(j=1; j<=7; j++){ scanf("%d",&arr[i][j]); } } for(i=1; i<=7; i++){ for(j=1; j<=7; j++){ if(arr[i][j]!=0){ num=0; color=arr[i][j]; dfs(i,j); if(num>=3) { cnt++; } } } } printf("%d",cnt); return 0; }*/
0
0
3
tg1028
2022년 10월 19일
In 소스 코드 제출
/*#include <stdio.h> #include <string.h> int main() { char a[201]; int i; gets(a); for(i=0; a[i]!=0; i++){ if(a[i]==' '){ printf("%c",a[i]); } else if('d'<=a[i] && a[i]<='z'){ printf("%c",a[i]-3); } else if('a'<=a[i] && a[i]<='c'){ printf("%c",a[i]+23); } } return 0; } #include <stdio.h> #include <string.h> int main() { char a[201]; int i; gets(a); for(i=0; a[i]!=0; i++){ if(a[i]==' '){ printf("%c",a[i]); } else if('a'<=a[i] && a[i]<='w'){ printf("%c",a[i]+3); } else if('x'<=a[i] && a[i]<='z'){ printf("%c",a[i]-23); } } return 0; } #include <stdio.h> #include <string.h> int main() { char a[101]; int i,b[101]={}; gets(a); for(i=0; a[i]!=0; i++){ b[a[i]-'a']++; } for(i=0; i<26; i++){ printf("%c:%d\n",i+'a',b[i]); } return 0; } sort 1. easy but slow ) 버블,선택,삽입 2. hard but fast ) 퀵... (재귀) 1번 루틴 끝났을때 버블정렬 : 맨 뒤에 한 자리가 정렬됨. 퀵정렬 : (기준값보다 작은 값 ) 기준값 ( 기준값보다 큰값 ) #include <stdio.h> int a[1000]={7,3,10,2,1}; void view(){ for(int i=0;i<5;i++){ printf("%d ",a[i]); } printf("\n"); } //quick sort void qs(int s, int e) //a[s] ~ a[e] 퀵정렬하세요 { int pivot = s; //기준값의 위치는 start번째 int left = s, right=e; int temp; while(left<right){ while(a[pivot] >= a[left]){ left++; } while(a[pivot] <= a[right]){ right--; } if(left<right){ temp=a[left]; a[left]=a[right]; a[right]=temp; } } temp=a[pivot]; a[pivot]=a[right]; a[right]=temp; if(s<right-1) qs(s,right-1); if(right+1<e) qs(right+1,e); } int main() { printf("before : "); view(); qs(0,4); printf("after : "); view(); } */ /* #include <stdio.h> int a[100001]; void qs(int s,int e) { int pivot=s; int left=s,right=e+1; int temp; do{ do{ left++; }while(a[pivot]>a[left]); do{ right--; }while(a[pivot]<a[right]); if(left<right){ temp=a[left]; a[left]=a[right]; a[right]=temp; } }while(left<right); temp=a[pivot]; a[pivot]=a[right]; a[right]=temp; if(s<right-1)qs(s,right-1); if(right+1<e)qs(right+1,e); } int main() { int n; scanf("%d",&n); for(int i=1; i<=n; i++){ scanf("%d",&a[i]); } qs(1,n); for(int i=1; i<=n; i++){ printf("%d\n",a[i]); } return 0; } 이진탐색 , 이분탐색 : 정렬이 되어있는 배열에서 어떤 숫자를 찾을때, 반씩 쪼개가면서 찾기 //binary search #include <stdio.h> int bs(int s, int e, int k) //a[s] ~ a[e] 중 k의 위치를 리턴 { int mid=(s+e)/2; if(){ //재귀 종료조건 없었으면 -1 } if(a[mid]==k) return mid; else if(a[mid]<k) bs(mid+1,e,k); else bs(mid-1,s,k); } #include <stdio.h> #include <string.h> int main() { int n,i,k,p,a[10]={0,1,2,3,4,5,6,7,8,9}; char b[12]={'A','B','C','D','E','F','G','H','I','J','K','L'}; scanf("%d",&n); p=(n+6)%10; k=(n-4)%12; printf("%c%d",b[k],p); return 0; } */
0
0
7
tg1028
2022년 10월 12일
In 소스 코드 제출
/*#include<stdio.h> int main() { int i,j,n,arr[10001]={},min,temp; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d",&arr[i]); } for(i=1; i<n; i++){ min=i; for(j=i+1; j<=n; j++){ if(arr[min]>arr[j]){ min=j; } } temp=arr[i]; arr[i]=arr[min]; arr[min]=temp; } for(i=1; i<=n; i++){ printf("%d\n",arr[i]); } return 0; } #include <stdio.h> int a[10001]; int n, i, j, temp, key; int main() { scanf("%d", &n); for (i = 1; i <= n; i++) scanf("%d", &a[i]); for (i=2; i<=n; i++) { key=a[i]; for(j=i-1; j>=1&&a[j]<key; j--) { a[j+1]=a[j]; } a[j+1]=key; } for (i=1; i<=n; i++) printf("%d\n", a[i]); return 0; } 10 5 3 -2 -4 -9 0 3 7 13 8 -3 10 2 3 -2 -4 -9 0 3 7 13 8 -3 #include<stdio.h> int main() { int i,j,a,b,arr[100001]={},max=-10000000,sum=0; scanf("%d%d",&a,&b); for(i=1; i<=a; i++){ scanf("%d",&arr[i]); } for(i=1; i<=a-b+1; i++){ sum=0; for(j=i; j<i+b; j++){ //b개의합 sum+=arr[j]; } // printf("i : %d sum : %d\n",i,sum); if(sum>max){ max=sum; } } printf("%d",max); return 0; } #include <stdio.h> #include <string.h> int main() { char a[101], b[101]; int lena,lenb,i; scanf("%s %s",a,b); lena=strlen(a); lenb=strlen(b); if(lena>lenb){ printf("%s %s",b,a); } else if(lena==lenb){ for(i=0; a[i]!=NULL;i++){ if(a[i]>b[i]){ printf("%s %s",b,a); break; } else if(a[i]<b[i]){ printf("%s %s",a,b); break; } } } else if(lena<lenb){ printf("%s %s",a,b); } return 0; } #include <stdio.h> #include <string.h> int main() { char a[501]; int len,i,sum=0; scanf("%s",a); for(i=0; a[i]!=NULL;i++){ sum+=a[i]-48; } if(sum%3==0){ printf("1"); } else{ printf("0"); } return 0; } #include <stdio.h> #include <string.h> int main() { char a[21],b[21],c[21]; int i,lena,lenb,lenc; scanf("%s %s %s",a,b,c); lena=strlen(a); lenb=strlen(b); lenc=strlen(c); if(a[lena-1]==b[0] && b[lenb-1]==c[0] && c[lenc-1]==a[0]){ printf("good"); } else{ printf("bad"); } return 0; } #include <stdio.h> int main() { char a[1001]; int i; scanf("%s",a); for(i=0; a[i]!=NULL; i++){ if('a'<=a[i]&&a[i]<='z'){ a[i]=a[i]-32; } else if('A'<=a[i]&&a[i]<='Z'){ a[i]=a[i]+32; } } printf("%s",a); return 0; } */ -끝-
0
0
7
tg1028
2022년 10월 05일
In 소스 코드 제출
/*#include <stdio.h> typedef struct { char name[51]; int a; }student; int main() { int i,j,n; scanf("%d",&n); student arr[51],temp; for(i=1; i<=n; i++){ scanf("%s %d",arr[i].name,&arr[i].a); } for(i=1; i<n; i++){ for(j=1; j<=n-i; j++){ if(arr[j].a < arr[j+1].a){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } printf("%s",arr[3].name); return 0; } #include <stdio.h> typedef struct { int a,b,c; }student; int main() { int i,j,n; scanf("%d",&n); student arr[1001],temp; for(i=1; i<=n; i++){ scanf("%d %d",&arr[i].b, &arr[i].c); arr[i].a=i; } for(i=1; i<n; i++){ for(j=1; j<=n-i; j++){ if(arr[j].b < arr[j+1].b){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } else if(arr[j].b == arr[j+1].b){ if(arr[j].c < arr[j+1].c){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } else if(arr[j].c==arr[j+1].c){ if(arr[j].a > arr[j+1].a){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } } } for(i=1; i<=n; i++){ printf("%d %d %d\n",arr[i].a,arr[i].b,arr[i].c); } return 0; } #include <stdio.h> int a[10001]; int n, i, j, temp, min; int main() { scanf("%d", &n); for (i = 1; i <= n; i++) scanf("%d", &a[i]); for (i=1; i<n; i++) { min=i; for (j=i+1; j<=n; j++) { if(a[min]>a[j]){ min=j; } } temp = a[i]; a[i] = a[min]; a[min] = temp; } for (i=1; i<=n; i++) printf("%d\n", a[i]); return 0; } #include <stdio.h> int main() { int n,i,j,temp,min; int arr[101]; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d",&arr[i]); } for(i=1; i<=n; i++){ min=i; for(j=i+1; j<=n; j++){ if(arr[min] < arr[j]){ min=j; } } temp=arr[i]; arr[i]=arr[min]; arr[min]=temp; } for(i=1; i<=n; i++){ printf("%d ",arr[i]); } return 0; } #include <stdio.h> typedef struct { int a,b; }gas; int main() { int n,i,j,min; scanf("%d",&n); gas arr[101],temp; for(i=1; i<=n; i++){ scanf("%d %d",&arr[i].a,&arr[i].b); } for(i=1; i<=n; i++){ min=i; for(j=i+1; j<=n; j++){ if(arr[min].a > arr[j].a){ min=j; } } temp=arr[i]; arr[i]=arr[min]; arr[min]=temp; } for(i=1; i<=n; i++){ printf("%d %d\n",arr[i].a,arr[i].b); } return 0; } arr[i] : i가 입력된 횟수 1번 ~ 23번 arr[1] ~ arr[23] 9 arr[9]++; #include <stdio.h> int main() { int n,a,i,arr[24]={}; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d",&a); arr[a]++; } for(i=1; i<=23; i++){ printf("%d ",arr[i]); } return 0; } #include <stdio.h> int main() { int a,n,i,j,arr[100001]={}; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d",&a); arr[a]++; } for(i=0; i<=100000; i++){ for(j=1; j<=arr[i]; j++){ printf("%d ",i); } } return 0; } #include <stdio.h> typedef struct { char name[101]; int day; } work; int main() { int n,i,j,a,b,c; scanf("%d",&n); work arr[101],temp; for(i=1; i<=n; i++) { scanf("%s %d %d %d",arr[i].name,&a,&b,&c); arr[i].day=a*10000+b*100+c; } for(i=1; i<n; i++) { for(j=1; j<=n-i; j++) { if(arr[j].day > arr[j+1].day) { temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } else if(arr[j].day==arr[j+1].day) { if(strcmp(arr[j].name,arr[j+1].name)>0) { temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } } for(i=1; i<=n; i++) printf("%s\n",arr[i].name); return 0; } //printf("%d",strcmp("aaa","zzz")); <0 //if(strcmp(arr[j].name,arr[j+1].name)>0) */
0
0
5
tg1028
2022년 9월 28일
In 소스 코드 제출
/* #include <stdio.h> #include <string.h> int stack[201]={}; int top=-1; void push(int n) { if(top==201) return; stack[++top]=n; } int pop() { return stack[top--]; } int main() { char str[201]={}; int a, b, num=0; gets(str); for(int i=0; str[i]!=NULL; i++){ if(str[i]=='*' || str[i]=='-' || str[i]=='+'){ a=pop(); b=pop(); if(str[i]=='*'){ push(a*b); } if(str[i]=='+'){ push(a+b); } if(str[i]=='-'){ push(b-a); } } else if(str[i]!=' '){ num=num*10+str[i]-48; if(str[i+1]==' '){ push(num); num=0; } } } printf("%d",pop()); } 정렬 : 순서대로 나열 ( 오름차순, 내림차순 ) 5 1 4 2 3 -> 1 2 3 4 5 1. 구현 easy 성능 bad (자전거) -> 버블, 선택, 삽입 2. 구현 hard 성능 good (비행기) -> 퀵정렬, 병합정렬, 기수정렬 ... 버블정렬 if (a[j] < a[j+1]) : 내림차순 if (a[j] > a[j+1]) : 오름차순 #include <stdio.h> int a[10001]; int n, i, j, temp; int main() { scanf("%d", &n); for (i=1; i<=n; i++) scanf("%d", &a[i]); for(i=1; i<n; i++) { for(j=1; j<=n-i; j++) { if (a[j] > a[j+1]) { temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } for (i = 1; i <= n; i++) printf("%d\n", a[i]); return 0; } #include <stdio.h> int main() { int arr[101]={}; int i,j,temp; for(i=1; i<=7; i++){ scanf("%d",&arr[i]); } for(i=1; i<7; i++){ for(j=1; j<=7-i; j++){ if(arr[j]<arr[j+1]){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } printf("%d\n",arr[1]); printf("%d\n",arr[2]); } */ /* #include <stdio.h> int main() { int arr[1001]; int a=0,n,i,j,temp; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d",&arr[i]); } for(i=1; i<n; i++){ a=0; for(j=1; j<=n-i; j++){ if(arr[j] > arr[j+1]){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; a++; } } if(a==0){ break; } } printf("%d",i-1); return 0; } #include <stdio.h> typedef struct { char name[51]; int a; }student; int main() { int i,j,n,mi=0; scanf("%d",&n); student arr[51],temp; arr[0].a=0; for( i=1; i<=n; i++){ scanf("%s %d",arr[i].name,&arr[i].a); } for(i=1; i<=n; i++){ for(j=1; j<n-i; j++){ if(arr[j].a < arr[j+1].a){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } printf("%s",arr[3].name); return 0; } */
0
0
5
tg1028
2022년 9월 28일
In 소스 코드 제출
#include <stdio.h> typedef struct { char name[51]; int a; }student; int main() { int i,j,n,mi=0; scanf("%d",&n); student arr[51],temp; arr[0].a=0; for( i=1; i<=n; i++){ scanf("%s %d",arr[i].name,&arr[i].a); } for(i=1; i<=n; i++){ for(j=1; j<n-i; j++){ if(arr[j].a < arr[j+1].a){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } printf("%s",arr[3].name); return 0; }
0
0
1
tg1028
2022년 9월 21일
In 소스 코드 제출
/* 로그아웃 안한사람 sararyu07 #include<stdio.h> int main() { int top=0, sum=0; char str[100001]={}; scanf("%s",str); for(int i=0; str[i]!=0; i++){ if(str[i]=='('){ if(str[i+1]==')'){ sum+=top; } else{ top++; } } else if(str[i]==')'){ if(str[i-1]=='('){ continue; } else{ top--; sum++; } } } printf("%d",sum); return 0; } #include <stdio.h> int top1=-1; int top=-1; int stack1[102]={}; int stack[102]={}; void push(int n) { if(top==102) return; stack[++top]=n; } int pop() { return stack[top--]; } void push1(int n) { if(top1==102) return; stack1[++top1]=n; } int pop1() { return stack1[top1--]; } int main() { char a[101]={},b[101]={}; int i,j,n,m,c=0,num,x,y; scanf("%s",a); n=strlen(a); scanf("%s",b); m=strlen(b); for(i=n-1,j=m-1; i>=0||j>=0; i--,j--){ if(i>=0) x= a[i]-48; else x=0; if(j>=0) y=b[j]-48; else y=0; num=x+y+c; c=num/10; push1 (num%10); } if(c==1) push1(c); while(top1!=-1){ printf("%d",pop1()); } return 0; } */
0
0
3
tg1028
2022년 9월 14일
In 소스 코드 제출
/*#include <stdio.h> int top=-1; char stack[300]={}; void push(char n) { if(top==300) return; stack[++top]=n; } char pop() { return stack[top--]; } int main() { int n,b=0; char str[201]={}; scanf("%d %s",&n,str); for(int i=n-1; i>=0; i--){ push(str[i]); b+=1; if(b%3==0 && i!=0) { push(','); } } while(top!=-1){ printf("%c",pop()); } return 0; } #include<stdio.h> int top=-1; int stack[100000]={}; void push(int n) { if(top==100000) return; stack[++top]=n; } int pop() { return stack[top--]; } int main() { int n,a,sum=0; scanf("%d",&n); for(int i=1; i<=n; i++){ scanf("%d",&a); if(a==0){ pop(); } else{ push(a); } } while(top!=-1){ sum+=pop(); } printf("%d",sum); return 0; } 올바른괄호 체크하는법 1. ( 갯수와 ) 갯수가 같아야한다 2. 현재까지 나온 '(' 의 갯수 보다 ')' 갯수가 많아지는 순간 끝 ( ( ( ) ) ) ) #include<stdio.h> int top=-1; char stack[50000]={}; void push() { if(top==50000) return ; stack[++top]; } char pop() { return stack[top--]; } int main() { int a=0,b=0; char str[50001]={}; scanf("%s",str); for(int i=0; str[i]!=0; i++){ if(str[i]=='('){ push(str[i]); } else if(str[i]==')'){ if(top==-1){ printf("bad"); return 0; } pop(); } } if(top==-1){ printf("good"); } else { printf("bad"); } return 0; } */ #include <stdio.h> #include <string.h> int top=-1; int stack[200]={}; void push(int n) { if(top==200) return; stack[++top]=n; } char pop() { return stack[top--]; } int main() { int n,num=0; char str[200]={}; scanf("%d ",&n); for(int i=1; i<=n; i++){ gets(str); if(str[0]=='p'&&str[1]=='u'){ num=0; for(int j=6; str[j]!=' '; j++){ num=10*num+str[j]-'0'; } push(num); } else if(str[0]=='p' && str[1]=='o'){ if(top!=-1) pop(); } else if(str[0]=='t'){ if(top==-1){ printf("-1\n"); } else{ printf("%d\n",stack[top]); } } else if(str[0]=='s'){ printf("%d\n",top+1); } else if(str[0]=='e'){ if(top==-1){ printf("true\n"); } else{ printf("false\n"); } } } return 0; }
0
0
5
tg1028
2022년 8월 31일
In 소스 코드 제출
/*#include <stdio.h> int main() { int a,b,c,d=0,n=0,e=0; scanf("%d%d%d",&a,&b,&c); n=b+c; d=(a+n/60)%24; e=n%60; printf("%d %d",d,e); return 0; } #include <stdio.h> int arr[4][5]={}; int check(int x, int y) { //x번째 학생과 y번째 학생이 점수가 같음 int d = arr[x][3]; int e = arr[y][3]; //3점 비교 if(d>e) return x; else if(d<e) return y; //3점 갯수가 같다면 2점 갯수 비교 d=arr[x][2]; e=arr[y][2]; if(d>e) { return x; } else if(e>d){ return y; } else return 0; //2점도 같다면 } int main() { int i,n,a,b,c,d,e,f, win; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d %d %d",&a, &b, &c); arr[1][a]++; arr[2][b]++; arr[3][c]++; } for(i=1; i<=3; i++){ arr[i][4]=arr[i][1]+arr[i][2]*2+arr[i][3]*3; } a=arr[1][4]; b=arr[2][4]; c=arr[3][4]; d=arr[1][3]; e=arr[2][3]; f=arr[3][3]; if(a>b && a>c){ printf("1 %d",a); } else if(b>a && b>c){ printf("2 %d",b); } else if(c>a && c>b){ printf("3 %d",c); } else if(a==b && b!=c) { win=check(1,2); printf("%d %d",win, a); } else if(b==c && a!=b) { win=check(2,3); printf("%d %d",win,b); } else if(a==c && b!=c) { win=check(1,3); printf("%d %d",win,c); } else //a==b==c { //printf("%d %d %d",d,e,f); if(d>e &&d>f) printf("1"); else if(e>d && e>f) printf("2"); else if(f>d && f>e) printf("3"); else if(d==e) printf("%d",check(1,2)); else if(e==f) printf("%d",check(2,3)); else if(d==f) printf("%d",check(1,3)); else printf("0"); printf(" %d",a); } return 0; } 자료구조 Data Structure 1. 정렬 sort 2. 스택 stack 3. 큐 queue 4. 트리 (x) 5. 연결리스트 (x) 6. 그래프 - dfs / bfs 스택 stack 쌓는거 #include <stdio.h> int stack[50]={}; int top=-1; //top :마지막 데이터의 위치 -1 void push(int n){ //위에 데이터를 쌓아라 if(top==49) return ; //스택이 가득찼을때 더이상 넣지 않도록 처리 stack[++top]=n; } int pop(){ //맨 위 데이터를 뺀다 //top==-1 : 스택이 비었을때 더이상 top이 감소하지 않도록 처리 if(top!=-1) return stack[top--]; } void view(){ //stack 전부 출력 printf("stack >> "); for(int i=0;i<=top;i++){ printf("%d ",stack[i]); } printf("\n"); } int main() { push(5); view(); printf("top = %d\n",top); push(6); view(); printf("top = %d\n",top); pop(); view(); printf("top = %d\n",top); pop(); view(); printf("top = %d\n",top); pop(); view(); printf("top = %d\n",top); } #include <stdio.h> char stack[1000]={}; int top=-1; void push(char n){ if(top==999) return; stack[++top]=n; } char pop(){ return stack[top--]; } int main() { char str[101]={}; scanf("%s",str); for(int i=0; str[i]!=0;i++){ push(str[i]); } while(top!=-1) { printf("%c",pop()); } return 0; } */
0
0
4
tg1028
2022년 8월 24일
In 소스 코드 제출
/* #include<stdio.h> typedef struct { char name[11]; int a,b,c; }student; int main() { int g=1,h=1,i,n,mi=0; scanf("%d",&n); student arr[101]; arr[0].a=0; for(i=1; i<=n; i++){ scanf("%s %d %d %d",arr[i].name,&arr[i].a,&arr[i].b,&arr[i].c); if(arr[mi].a<arr[i].a){ mi=i; } } printf("%s",arr[mi].name); for(i=1; i<=n; i++){ if(arr[i].b>arr[mi].b){ g++; } if(arr[i].c>arr[mi].c){ h++; } } printf(" %d %d",g ,h); } c언어 문법 끝 -> 자료구조 ( 스택, 큐, 정렬, dfs/bfs, -> 연결리스트, 트리, DP .... ) #include <stdio.h> int main() { int a,b,c,d,e,f,h,i,j; char k; scanf("%d-%d",&a,&b); c=a/10000; d=a/100%100; e=a%100; f=b/1000000; if(f==1){ h=1900+c; i=d; j=e; k='M'; } if(f==2){ h=1900+c; i=d; j=e; k='F'; } if(f==3){ h=2000+c; i=d; j=e; k='M'; } if(f==3){ h=2000+c; i=d; j=e; k='F'; } printf("%d/%02d/%02d %c",h,i,j,k); return 0; } #include <stdio.h> int main() { int sum=0,jumsu=0,i,n,arr[101]={}; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d",&arr[i]); if(arr[i]==0){ jumsu=0; } else{ jumsu+=1; } sum+=jumsu; } printf("%d",sum); return 0; } */ /* #include <stdio.h> typedef struct { int a,b,c; }student; int main() { int first=0,second=0,third=0,i,mi=0,n,d,e,f,g,h,j; scanf("%d",&n); student arr[1001]; for(i=1; i<=n; i++){ scanf("%d %d %d",&arr[i].a,&arr[i].b,&arr[i].c); first+=arr[i].a; second+=arr[i].b; third+=arr[i].c; if(arr[i].a==3){ d+=3; } if(arr[i].b==3){ e+=3; } if(arr[i].c==3){ f+=3; } if(arr[i].a==2){ g+=2; } if(arr[i].b==2){ h+=2; } if(arr[i].c==2){ j+=2; } } d=d/3; e=e/3; f=f/3; g=g/2; h=h/2; j=j/2; if((first>second && second>third) || (first>third && third>second)){ printf("1 %d",first); } else if((second>first && first>third) || (second>third && third>first)){ printf("2 %d",second); } else if((third>first && first>second) || (third>second && second >first)){ printf("3 %d",third); } //d e f // g h j else if(first==second){ //1, 2 동점 if(d==e){ if(g==h){ printf("0 %d",first); } else if(g>h){ printf("1 %d",first); } else{ printf("2 %d",second); } } else if(d>e){ printf("1 %d",first); } else{ printf("2 %d",second); } } else if(second==third){ // 2, 3 동점 if(e==f){ if(h==j){ printf("0 %d",second); } else if(h>j){ printf("2 %d",second); } else{ printf("3 %d",third); } } else if(e>f){ printf("2 %d",second); } else{ printf("3 %d",third); } } else if(first==third){ // 1, 3 동점 if(d==f){ if(g==j){ printf("0 %d",first); } else if(g>j){ printf("1 %d",first); } else{ printf("2 %d",third); } } else if(d>f){ printf("1 %d",first); } else{ printf("3 %d",third); } } return 0; } //다음 시간에 선생님이랑 같이 다시 풀어보기! */
0
0
7
tg1028
2022년 8월 17일
In 소스 코드 제출
/*#include<stdio.h> void f(int n) { if(n==1){ return ; } if(n%2 == 0){ f(n/2); printf("%d\n",n/2); } if(n%2 != 0){ f(3*n+1); printf("%d\n",3*n+1); } } int main() { int n; scanf("%d",&n); f(n); printf("%d",n); } #include <stdio.h> void f(int n) { if(n==0) { return; } f(n/2); printf("%d",n%2); } int main() { int n; scanf("%d",&n); if(n==0) { printf("0"); } f(n); } #include<stdio.h> int memo[15][15]={}; int f(int k, int n) { if(memo[k][n]!=0) return memo[k][n]; if(k==0 || n==0){ return memo[k][n]=n; } return memo[k][n]=f(k-1,n)+f(k,n-1); } int main() { int k,n; while( scanf("%d %d", &k, &n) != EOF ) printf("%d\n", f(k, n)); } 구조체 struct : 내가 만드는 자료형 (사용자 정의 자료형) 학생 100명의 나이(정수) 와 성적(문자), 이름, 전화번호 를 관리 //구조체 선언 typedef struct {//member int age; char grade; } student; int main() { student arr[101]; // 10번째 학생과 20번째 학생의 이름, 성적 교환 // arr[10]과 arr[20] // int age[100]; // char grade[100]; } #include<stdio.h> typedef struct { int a,b,c; }student; int main() { student arr[1001]; int n,i,mi=1,x,y; scanf("%d",&n); for(i=1; i<=n; i++){ scanf("%d %d %d",&arr[i].a,&arr[i].b,&arr[i].c); } //mi : 최댓값의 위치 //금메달 구하기 for(i=1; i<=n; i++){ if(arr[mi].c<arr[i].c){ mi=i; } } printf("%d %d\n",arr[mi].a, arr[mi].b); x=arr[mi].a; //은메달 구하기 arr[mi].c=0; for(i=1; i<=n; i++){ if(arr[mi].c<arr[i].c){ mi=i; } } y=arr[mi].a; printf("%d %d\n",arr[mi].a, arr[mi].b); arr[mi].c=0; //??? if(x==y){ for(i=1; i<=n; i++){ if(arr[i].a==x){ arr[i].c=0; } } } //동메달 구하기 나라별 메달 수는 최대 두 개 for(i=1; i<=n; i++){ if(arr[mi].c<arr[i].c){ mi=i; } } printf("%d %d\n",arr[mi].a, arr[mi].b); } */ /* #include <stdio.h> typedef struct{ char name[11]; int a, b, c; }student; int main(){ student arr[101]; int n, i, j; scanf("%d",&n); for(i=1; i<=n; i++) { scanf("%s %d %d %d",arr[i].name,&arr[i].a,&arr[i].b,&arr[i].c); } } #include <stdio.h> typedef struct { char name[11]; int b; }student; student arr[101]; int f(int n,int m) { int mi=1,i,j; for(j=1;j<=m;j++){ for(i=1;i<=n;i++){ if(arr[mi].b < arr[i].b){ mi=i; } } printf ("%s\n",arr[mi].name); arr[mi].b=0; } } int main() { int i,n,m; scanf("%d %d",&n,&m); for(i=1; i<=n; i++){ scanf("%s %d",arr[i].name,&arr[i].b); } f(n,m); } */
0
0
4
tg1028
2022년 8월 10일
In 소스 코드 제출
/* #include<stdio.h> void f(int n) { if(n==0){ return ; } f(n-1); printf("%d\n",n); } int main() { int n; scanf("%d",&n); f(n); } */ /* #include<stdio.h> int f(int n) { if(n==1){ return; } return n+f(n-1); } int main() { int n; scanf("%d",&n); printf("%d",f(n)); } #include <stdio.h> void star(int n) { if(n==0){ return ; } printf("*"); return star(n-1); } void f(int n) { if(n==0){ return ; } f(n-1); //printf("%d",n); //*을 n개 출력하는함수 호출 star(n); printf("\n"); } int main() { int n; scanf("%d",&n); f(n); } #include <stdio.h> int memo[51][51]= {}; int f(int r, int c) { if(memo[r][c]!=0) { return memo[r][c]; } if(r==1 || c==1) { return memo[r][c]=1; } return memo[r][c]=(f(r,c-1)+f(r-1,c))%100000000; } int main() { int r, c; scanf("%d %d",&r,&c); printf("%d",f(r,c)); } //fibonacci (recursive o memoization o) #include <stdio.h> int memo[201]={0}; int f(int n) { if(memo[n]!=0) return memo[n]; if(n<=2){ return memo[n]=1; } return memo[n]=(f(n-2)+f(n-1))%10009; } int main() { int n; scanf("%d",&n); printf("%d",f(n)); } */ /* #include <stdio.h> int memo[100001]={}; int f(int n) { if(memo[n]!=0){ return memo[n]; } if(n<=2){ return memo[n]=n; } if(n==3){ return memo[n]=4; } return memo[n]=(f(n-1)+f(n-2)+f(n-3))%1000; } int main() { int n; scanf("%d",&n); printf("%d",f(n)); } */
0
0
4
tg1028
2022년 8월 04일
In 소스 코드 제출
/*#include <stdio.h> int f(int n) { if(n==1) { return 1; } return n + f(n-1); } int main() { int n; scanf("%d",&n); printf("%d",f(n)); } #include <stdio.h> int f(int n) { if(n==1){ return 1; } return n * f(n-1); } int main() { int n; scanf("%d",&n); printf("%d",f(n)); } #include <stdio.h> int f(int n) { if(n==1 || n==2){ return 1; } if(n==3 || n==4){ return n-1; } if(n==5){ return 5; } if(n==6){ return 8; } if(n==7){ return 13; } if(n==8){ return 21; } if(n==9){ return 33; } if(n==10){ return 54; } if(n==11){ return 87; } if(n==12){ return 141; } if(n==13){ return 228; } if(n==14){ return 369; } if(n==15){ return 610; } if(n==16){ return 979; } if(n==17){ return 1589; } if(n==18){ return 2568; } if(n==19){ return 4157; } if(n==20){ return 6765; } return f(n-2) + f(n-1); } int main() { int n; scanf("%d",&n); printf("%d",f(n)); } #include <stdio.h> int f(int n) { if(n<=2) { return 1; } return f(n-1) + f(n-2); } int main() { int n; scanf("%d",&n); printf("%d",f(n)); } #include <stdio.h> int f(int n) { if(n<=2){ return 1; } return f(n-1)+f(n-2); } int main() { int n; scanf("%d",&n); printf("%d",f(n)%10009); } */ /* #include <stdio.h> void f(int n) { if(n==1){ return 1; } else if(n%2==1){ printf("%d\n",3*n+1);1 f(3*n+1); } else{ printf("%d\n",n/2); f(n/2); } } int main() { int n; scanf("%d",&n); printf("%d\n",n); f(n); } #include<stdio.h> int memo[10000005] = {0}; int pibo(int k) { if(k<=2) { return memo[k] = 1; } if(memo[k]!=0) { return memo[k]; } return memo[k] = pibo(k-1)%10009 + pibo(k-2)%10009; } int main() { int n; scanf("%d", &n); printf("%d", pibo(n)%10009); } */ #include <stdio.h> int memo[10000001]; int f(int a,int k) { if(memo[k]!=0){ return memo[k]; } return memo [k] = f(a-1) + f(a-2) + f(a-3); } int main() { int a; scanf("%d",&a); printf("%d",f(a)); }
0
0
2
tg1028
2022년 8월 03일
In 소스 코드 제출
/*#include <stdio.h> int f(int n) { int a=0,sum=0; while(n!=0){ a=n%10; sum+=a; n=n/10; } return sum; } int main() { int n; scanf("%d",&n); while(n>9){ n = f(n); } printf("%d",n); } #include <stdio.h> double f(double n) { double a=0; if(n>=0){ return n; } else{ a=-1*n; return a; } } int main() { double n; scanf("%lf",&n); printf("%.10g",f(n)); } #include<stdio.h> void rec(int k) { if(k==0) { return; } printf("%d\n", k); rec(k-1); } int main() { int n; scanf("%d", &n); rec(n); } #include <stdio.h> void f(int a) { if(a==0){ return; } f(a-1); printf("%d\n",a); } int main() { int n; scanf("%d",&n); f(n); } #include<stdio.h> void f(int a) { if(a==0){ return; } printf("%d\n",a); f(a-1); } int main() { int n; scanf("%d",&n); f(n); } */ #include<stdio.h> void f(int a, int b) { if(a>b) { return; } if(a%2==1) { printf("%d ", a); } f(a+1, b); } int main() { int a,b; scanf("%d %d",&a, &b); f(a,b); }
0
0
3
tg1028
2022년 7월 20일
In 소스 코드 제출
/*#include <stdio.h> int n, a, b, d[1010]; int maxi(int a, int b) { int i,max=a; for(i=a; i<=b; i++){ if(d[i]>d[max]){ max=i; } } return max; } int main() { scanf("%d", &n); for(int i=1; i<=n; i++) scanf("%d", &d[i]); scanf("%d%d", &a, &b); printf("%d\n", maxi(a, b)); } #include <stdio.h> int n, d[100010], k; int f(int k) { int i; for(i=1; i<=n; i++){ if (d[i]==k){ return i; } } return -1; } int main() { scanf("%d", &n); for(int i=1; i<=n; i++) scanf("%d", &d[i]); scanf("%d", &k); printf("%d\n", f(k)); } #include <stdio.h> int n, a, b, d[1010]; long long int subsetsum(int a, int b) { int i; long long int sum=0; for (i=a; i<=b; i++){ sum=sum+d[i]; } return sum; } int main() { scanf("%d", &n); for(int i=1; i<=n; i++) scanf("%d", &d[i]); scanf("%d%d", &a, &b); printf("%lld\n", subsetsum(a, b)); } #include <stdio.h> int n, k, d[1010]; int upper_bound(int k) { int i; for(i=1; i<=n; i++){ if(d[i]>k){ return i; } } return n+1; } int main() { scanf("%d", &n); for(int i=1; i<=n; i++) scanf("%d", &d[i]); scanf("%d", &k); printf("%d\n", upper_bound(k)); } #include <stdio.h> int n; long long int d[110]; long long int f() { int i; long long int min=d[1]; for(i=1; i<=n; i++){ if(d[i]<min){ min=d[i]; } } return min; } int main() { scanf("%d", &n); for(int i=1; i<=n; i++) scanf("%lld", &d[i]); printf("%lld", f()); return 0; } #include <stdio.h> long long int n; int sqrt(long long int n) { int i; for(i=0; ; i++){ if((long long int)i*i>n) break; } return i-1; } int main() { scanf("%lld", &n); printf("%d\n", sqrt(n)); return 0; } #include <stdio.h> int gcd(int p, int q){ if(p==0) return q; return gcd(q%p, p);} long long int lcm(int a, int b) { int c = gcd(a,b); long long int d = (long long int)a*b/c; return d; } int main() { int a, b; scanf("%d%d", &a, &b); printf("%lld\n", lcm(a, b)); } #include <stdio.h> #include <stdio.h> int n, k, d[1010]; // 이 부분에 들어가야 될 코드를 작성하여 제출 int main() { scanf("%d", &n); for(int i=1; i<=n; i++)#include <stdio.h> int n, k, d[1010]; // 이 부분에 들어가야 될 코드를 작성하여 제출 int main() { scanf("%d", &n); for(int i=1; i<=n; i++) scanf("%d", &d[i]); scanf("%d", &k); printf("%d\n", lower_bound(k)); } scanf("%d", &d[i]); scanf("%d", &k); printf("%d\n", lower_bound(k)); } int a, n; long long int pow(int a, int n) { long long int c=1; int i; if(a==1){ return 1; } for(i=1; i<=n; i++){ c=c*a; } return c; } int main() { scanf("%d%d", &a, &n); printf("%lld\n", pow(a, n)); } #include <stdio.h> int n, k, d[1010]; int lower_bound(int k) { int i; for(i=1; i<=n; i++){ if(d[i]>=k){ return i; } } return n+1; } int main() { scanf("%d", &n); for(int i=1; i<=n; i++) scanf("%d", &d[i]); scanf("%d", &k); printf("%d\n", lower_bound(k)); } #include <stdio.h> int n, d[110]; int f() { int i, max=0; for(i=0; i<n; i++){ if(d[i]>d[max]){ max=i; } } return max+1; } int main() { scanf("%d", &n); for(int i=0; i<n; i++) scanf("%d", &d[i]); printf("%d", f()); return 0; } #include <stdio.h> int f(int n) { int sum=0; for(;;){ sum+=n%10; n=n/10; if(n==0){ break; } } return sum; } int main() { int n; scanf("%d",&n); //자릿수의 합이 한자리가 될때까지 계산 n=f(n); while(n>=10) { n=f(n); } printf("%d",n);}
0
0
5
tg1028
2022년 7월 13일
In 소스 코드 제출
/* #include <stdio.h> int arr[11][11]={0}; // 전역 변수 void view() { int i, j; //지역 변수 for(i=1; i<=10; i++){ for(j=1; j<=10; j++){ printf("%d ",arr[i][j]); } printf("\n"); } return ; } int main() { //지역 변수 int a,i,j,k,x[9],y[9]; // 1. map scan for(i=1; i<=10; i++){ for(j=1; j<=10; j++){ scanf("%d",&arr[i][j]); } } //2. 물풍선 터트리기 for(i=1; i<=10; i++){ for(j=1; j<=10; j++){ if(arr[i][j]>=1){ for(k=1; k<=arr[i][j]; k++){ //down if(i+k>10||arr[i+k][j]==-1){ break; } if(arr[i+k][j]==0) arr[i+k][j]=-2; } for(k=1; k<=arr[i][j]; k++){ //up if(i-k<1||arr[i-k][j]==-1){ break;} if(arr[i-k][j]==0)arr[i-k][j]=-2; } for(k=1; k<=arr[i][j]; k++){ if(j+k>10||arr[i][j+k]==-1){break;} if(arr[i][j+k]==0)arr[i][j+k]=-2; } for(k=1; k<=arr[i][j]; k++){ if(j-k<1||arr[i][j-k]==-1){break;} if(arr[i][j-k]==0)arr[i][j-k]=-2; } arr[i][j]=-2; } } } //3. player scan scanf("%d",&a); for(i=1; i<=a; i++){ scanf("%d %d",&x[i],&y[i]); if(arr[x[i]][y[i]]!=-2){ arr[x[i]][y[i]]=i; } } //4. map 출력 view(); //함수 호출 //5. 플레이어 상태 출력 printf("Character Information\n"); for(i=1; i<=a; i++){ //arr[x[i]][y[i]] : i번째 플레이어가 있는곳의 값 if(arr[x[i]][y[i]]==-2){ printf("player %d dead\n",i); } else{ printf("player %d survive\n",i); } } return 0; } */ /* #include <stdio.h> int n; //함수원형 //리턴타입 함수이름(매개변수) void f(int a) { if(a==1) { return ; } else { } } int main() { scanf("%d", &n); f(n); return 0; } #include <stdio.h> void f() { printf("hello"); } int main() { f(); return 0; } #include <stdio.h> char f() { return 'A'; } int main() { printf("%c", f() ); return 0; } #include <stdio.h> int f() { return 1; } int main() { printf("%d", f() ); return 0; } #include <stdio.h> int n; void f(int n) { if(n==2){ printf("world"); } else{ printf("hello"); } } int main() { scanf("%d", &n); f(n); return 0; } a== b== c (x) a==b && b==c (o) #include <stdio.h> int n; char grade (int k) { if(k>=90){ return 'A'; } else if(k>=80){ return 'B'; } else if(k>=70){ return 'C'; } else if(k>=60){ return 'D'; } else{ return 'F'; } } int main() { scanf("%d", &n); printf("%c", grade(n)); return 0; } #include <stdio.h> int n; void f(int n) { int i; for(i=1; i<=n; i++){ printf("*"); } } int main() { scanf("%d", &n); f(n); return 0; } #include <stdio.h> int n; long long int f(int n) { int i; long long int sum=0; for(i=1; i<=n; i++){ sum=sum+i; } return sum; } int main() { scanf("%d", &n); printf("%lld\n", f(n)); } #include <stdio.h> int n; int f(int n) { int i,a=0; for(i=1; i<=n; i++){ if(n%i==0){ a=a+1; }f } return a; } int main() { printf("%d\n", f(n)); scanf("%d", &n); } #include <stdio.h> int a, b; int gcd(int a,int b) { int i,min=0; min=a<b?a:b; for(i=min; i>=1; i--){ if (a%i==0 && b%i==0){ break; } } return i; } int main() { scanf("%d%d", &a, &b); printf("%d\n", gcd(a, b)); } */
0
0
2
tg1028
2022년 7월 06일
In 소스 코드 제출
/*#include <stdio.h> int main() { int i,j,h,w,n,l,d,x,y,a; int arr[101][101]={0}; scanf("%d %d %d",&h,&w,&n); for(i=1; i<=n; i++){ scanf("%d %d %d %d",&l, &d,&x,&y); if(d==0){ for(j=0; j<l; j++){ arr[x][y+j]=1; } } else{ for(j=0; j<l; j++){ arr[x+j][y]=1; } } } //////////////////// for(i=1; i<=h; i++){ for(j=1; j<=w; j++){ printf("%d ",arr[i][j]); } printf("\n"); } return 0; } #include<stdio.h> int main() { int a,i,j,k; int arr[51][51]={0}; scanf("%d",&a); //1. 시작은 첫 행, 한 가운데 열에 1을 둔다. i=1; j=a/2+1; ///////////////// // 2. 행을 감소, 열을 증가하면서 순차적으로 수를 넣어간다. // 3. 행은 감소하므로 첫 행보다 작아지는 경우에는 마지막 행으로 넘어간다. // 4. 열은 증가하므로 마지막 열보다 커지는 경우에는 첫 열로 넘어간다. // 5. 넣은 수가 n의 배수이면 행만 증가한다. 열은 변화없음. for( k=1; k<=a*a; k++){ arr[i][j]=k; if(k%a==0){ i++; } else { if(i>1){ i--; } else{ i=a; } if(j<a){ j++; } else{ j=1; } } } // 위의 방법대로 크기가 n인 홀수 마방진을 출력한다. ///////////////// for(i=1; i<=a; i++){ for(j=1; j<=a; j++){ printf("%d ", arr[i][j]); } printf("\n"); } return 0; } #include <stdio.h> int main() { int arr[27][27]={0}; int arr1[27][27]={0}; int i,j,sum; for(i=1; i<=25; i++){ for(j=1; j<=25; j++){ scanf("%d",&arr[i][j]); } } for(i=1; i<=25; i++){ for(j=1; j<=25; j++){ sum=arr[i+1][j+1]+arr[i-1][j-1]+arr[i+1][j]+arr[i-1][j]+arr[i][j+1]+arr[i][j-1]+arr[i+1][j-1]+arr[i-1][j+1]; if(arr[i][j]==1){ //생명이 있는 칸 if(sum>=4 || sum<=1){ arr1[i][j]=0; } else{ arr1[i][j]=1; } } else{ if(sum==3){ arr1[i][j]=1; } else{ arr1[i][j]=0; } } } } for(i=1; i<=25; i++){ for(j=1; j<=25; j++){ printf("%d ",arr1[i][j]); } printf("\n"); } return 0; } 복합대입연산자 sum=sum+1; sum++; sum=sum-1; sum--; sum=sum+3; sum+=3; + - * / % sum/=10; sum=sum/10; #include <stdio.h> int main() { int a,i,j,k,x,y,sum=0; int arr[101][101]={0}; scanf("%d",&a); /////////////////// for(k=1; k<=a; k++) { scanf("%d %d",&x,&y); for(i=x;i<x+10;i++){ for(j=y;j<y+10;j++){ arr[i][j]=1; } } } ///////////////////// for(i=1; i<=100; i++){ for(j=1; j<=100; j++){ sum+=arr[i][j]; } } printf("%d",sum); return 0; } #include <stdio.h> int main() { int k,a,b,c,d,i,j,sum=0; int arr[101][101]={0}; for(k=1; k<=4; k++){ scanf("%d %d %d %d",&a, &b, &c, &d); for(i=a; i<c; i++){ for(j=b; j<d; j++){ arr[i][j]=1; } } } ///////////////////// for(i=0; i<=99; i++){ for(j=0; j<=99; j++){ sum+=arr[i][j]; } } printf("%d",sum); } */
0
0
3

tg1028

더보기
bottom of page