전체 글
- 꽃 2022.02.11
- 눈 2022.02.11
- 비 2022.02.11
- 병 2022.02.11
- 함수 3 형성평가6 2022.02.06
- 함수 3 형성평가4 rev2 2022.02.06
- 함수 3 형성평가4 rev.1 2022.02.06
- 함수 3 형성평가3 2022.02.06
- 함수 3 형성평가2 2022.02.06
- 스택 Stack 2022.02.04
- 최단경로 - 다익스트라 - 우선순위큐 사용 2022.02.01
- 최단 경로 - 다익스트라 - dijkstra 2022.02.01
- 문자열1 - 자가진단9 2022.01.19
- chapter one: the chosen one 2022.01.09
- 함수3 - 자가진단3 2022.01.07
- 단어 뒤집기 2 2021.12.31
- 머지 정렬 Merge Sort 2021.12.31
- 머지 정렬 Merge Sort 2021.12.31
- quick sort (퀵정렬) - 내림차순 2021.12.31
- 함수3 - 형성평가6 2021.12.30
- 591 : 함수3 - 자가진단6 2021.12.30
- 590 : 함수3 - 자가진단5 2021.12.30
- 592 : 함수3 - 자가진단4 2021.12.30
- 589 : 함수3 - 자가진단3 2021.12.30
- 함수3 - 자가진단2 2021.12.30
- 587 : 함수3 - 자가진단1 2021.12.30
- 접속사 if 2021.04.23
- 미로탈출 - 파이썬 2021.02.04
- 음료수 얼려먹기 - 파이썬 2021.02.04
- BFS - 파이썬 2021.02.04
꽃
눈
비
병
함수 3 형성평가6
YT 구현
#include <bits/stdc++.h>
using namespace std;
//함수 3 형성평가6
int cal(int sum, int n){
if(n==0){
return sum;
}
if(n%10 != 0) sum *= n%10;
return cal(sum, n/10);
}
int main(){
int a,b,c;
scanf("%d %d %d",&a, &b, &c);
printf("%d", cal(1, a*b*c));
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수 3 형성평가4 rev2 (0) | 2022.02.06 |
---|---|
함수 3 형성평가4 rev.1 (0) | 2022.02.06 |
함수 3 형성평가3 (0) | 2022.02.06 |
함수 3 형성평가2 (0) | 2022.02.06 |
최단 경로 - 다익스트라 - dijkstra (0) | 2022.02.01 |
함수 3 형성평가4 rev2
HW 구현
#include <bits/stdc++.h>
using namespace std;
//함수 3 형성평가4 rev2
int d[100];
int cal(int n){
if(n == 1 || n == 2){
return n;
}
if(d[n] != 0) return d[n];
d[n] = (cal(n-1) * cal(n-2))%100;
return d[n];
}
int main(){
int n;
scanf("%d",&n);
printf("%d", cal(n));
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수 3 형성평가6 (0) | 2022.02.06 |
---|---|
함수 3 형성평가4 rev.1 (0) | 2022.02.06 |
함수 3 형성평가3 (0) | 2022.02.06 |
함수 3 형성평가2 (0) | 2022.02.06 |
최단 경로 - 다익스트라 - dijkstra (0) | 2022.02.01 |
함수 3 형성평가4 rev.1
JW 구현
#include <bits/stdc++.h>
using namespace std;
//함수 3 형성평가4
int cal(int n){
if(n == 1 || n == 2){
return n;
}
int a = (cal(n-1) * cal(n-2))%100;
return a;
}
int main(){
int n;
scanf("%d",&n);
printf("%d", cal(n));
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수 3 형성평가6 (0) | 2022.02.06 |
---|---|
함수 3 형성평가4 rev2 (0) | 2022.02.06 |
함수 3 형성평가3 (0) | 2022.02.06 |
함수 3 형성평가2 (0) | 2022.02.06 |
최단 경로 - 다익스트라 - dijkstra (0) | 2022.02.01 |
함수 3 형성평가3
JW 재귀함수
#include <bits/stdc++.h>
using namespace std;
//함수 3 형성평가3
int a, b;
int d[100];
int cal(int sum, int index){
if(index > 3 || sum > b) return 0;
if(index == 3 && sum == b){
for(int i=0; i<a; i++){
printf("%d ", d[i]);
}
printf("\n");
return a;
}
for(int i=1; i<=6; i++){
d[index] = i;
cal(sum+i, index + 1);
}
}
int main(){
scanf("%d %d",&a, &b);
cal(0, 0);
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수 3 형성평가4 rev2 (0) | 2022.02.06 |
---|---|
함수 3 형성평가4 rev.1 (0) | 2022.02.06 |
함수 3 형성평가2 (0) | 2022.02.06 |
최단 경로 - 다익스트라 - dijkstra (0) | 2022.02.01 |
문자열1 - 자가진단9 (0) | 2022.01.19 |
함수 3 형성평가2
이 ㅇ ㅎ 재귀함수
#include <bits/stdc++.h>
using namespace std;
//함수 3 형성평가2
int cal(int a){
if(a==1 || a==2){
printf("%d ", a);
return a;
}
cal(a-2);
printf("%d ", a);
return 0;
}
int main(){
int a;
scanf("%d",&a);
cal(a);
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수 3 형성평가4 rev.1 (0) | 2022.02.06 |
---|---|
함수 3 형성평가3 (0) | 2022.02.06 |
최단 경로 - 다익스트라 - dijkstra (0) | 2022.02.01 |
문자열1 - 자가진단9 (0) | 2022.01.19 |
함수3 - 자가진단3 (0) | 2022.01.07 |
스택 Stack
#include <bits/stdc++.h>
using namespace std;
//X정우 학생
int main() {
string cmd;
int cnt, stack[10000] = {0,}, push;
cin >> cnt;
for (int i=0; i<cnt; i++) {
cin >> cmd;
if (cmd == "push") {
cin >> push;
for (int j=0; j<10000; j++) {
if (stack[j] == 0) {
stack[j] = push;
break;
}
}
}
else if (cmd == "pop") {
if (stack[0] == 0) {
printf("-1\n");
}
else {
for (int j=0; j<10000; j++) {
if (stack[j] == 0) {
printf("%d\n", stack[j-1]);
stack[j-1] = 0;
break;
}
}
}
}
else if (cmd == "size") {
int cnt = 0;
for (int j=0; j<10000; j++) {
if (stack[j] != 0) {
cnt++;
}
else {
break;
}
}
printf("%d\n", cnt);
}
else if (cmd == "empty") {
if (stack[0] == 0) {
printf("1\n");
}
else {
printf("0\n");
}
}
else if (cmd == "top") {
if (stack[0] == 0) {
printf("-1\n");
}
else {
for (int j=0; j<10000; j++) {
if (stack[j] == 0) {
printf("%d\n", stack[j-1]);
break;
}
}
}
}
}
return 0;
}
'정보올림피아드-KOI > BOJ' 카테고리의 다른 글
백준 소수 구하기 1929 (0) | 2022.03.07 |
---|---|
백준 토마토 (0) | 2022.03.07 |
단어 뒤집기 2 (0) | 2021.12.31 |
백준 : 가운데를 말해요 1655번 (0) | 2020.05.10 |
BOJ 외판원 순회 2 - 10971번 (0) | 2020.05.08 |
최단경로 - 다익스트라 - 우선순위큐 사용
#include <bits/stdc++.h>
using namespace std;
#define INF 1e9
int n, m, start;
vector<pair<int, int>> graph[100001];
bool visited[100001];
int d[100001];
int getSmallestNode(){
int min_value = INF;
int index = 0;
for(int i=1; i<=n; i++){
if(d[i] < min_value && !visited[i]){
min_value = d[i];
index = i;
}
}
return index;
}
void dijkstra(int start){
priority_queue<pair<int, int> > pq;
pq.push({0,start});
d[start] = 0;
if(d[now] < dist) continue;
while(!pq.empty()){
int dist = -pq.top().first;
int now = pq.top().second;
pq.pop();
for(int j=0; j<graph[now].size(); j++){
int cost_via_now = d[now] + graph[now][j].second;
if(cost_via_now < d[graph[now][j].first]){
d[graph[now][j].first] = cost_via_now;
pq.push(make_pair(-cost_via_now, graph[now][j].first));
}
}
}
}
int main()
{
cin >> n >> m >> start;
for(int i=0; i<m; i++){
int a, b, c;
cin >> a >> b >>c;
graph[a].push_back({b,c});
}
fill_n(d, 100001, INF);
dijkstra(start);
for(int i=1; i<=n; i++){
if(d[i] == INF){
cout << "INFINITY" << "\n";
}
else{
cout << d[i] << "\n";
}
}
return 0;
}
/*
입력 예시
6 11
1
1 2 2
1 3 5
1 4 1
2 3 3
2 4 2
3 2 3
3 6 5
4 3 3
4 5 1
5 3 1
5 6 2
*/
'정보올림피아드-KOI > 알고리즘 트레이닝' 카테고리의 다른 글
[이코테] 시각 (0) | 2021.01.24 |
---|---|
[이코테] 왕실의 나이트 (0) | 2021.01.24 |
[이코테] #게임개발 파이썬 (0) | 2021.01.24 |
[이코테] 상하좌우 (0) | 2021.01.24 |
[이코테] 이진탐색 (0) | 2020.12.14 |
최단 경로 - 다익스트라 - dijkstra
이코테 - 최단경로
#include <bits/stdc++.h>
using namespace std;
#define INF 1e9
int n, m, start;
vector<pair<int, int>> graph[100001];
bool visited[100001];
int d[100001];
int getSmallestNode(){
int min_value = INF;
int index = 0;
for(int i=1; i<=n; i++){
if(d[i] < min_value && !visited[i]){
min_value = d[i];
index = i;
}
}
return index;
}
void dijkstra(int start){
d[start] = 0;
visited[start] = true;
for(int j=0; j<graph[start].size(); j++){
d[graph[start][j].first] = graph[start][j].second;
}
for(int i=0; i<n-1; i++){
int now = getSmallestNode();
visited[now] = true;
for(int j=0; j<graph[now].size(); j++){
int cost_via_now = d[now] + graph[now][j].second;
if(cost_via_now < d[graph[now][j].first]){
d[graph[now][j].first] = cost_via_now;
}
}
}
}
int main()
{
cin >> n >> m >> start;
for(int i=0; i<m; i++){
int a, b, c;
cin >> a >> b >>c;
graph[a].push_back({b,c});
}
fill_n(d, 100001, INF);
dijkstra(start);
for(int i=1; i<=n; i++){
if(d[i] == INF){
cout << "INFINITY" << "\n";
}
else{
cout << d[i] << "\n";
}
}
return 0;
}
/*
입력 예시
6 11
1
1 2 2
1 3 5
1 4 1
2 3 3
2 4 2
3 2 3
3 6 5
4 3 3
4 5 1
5 3 1
5 6 2
*/
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수 3 형성평가3 (0) | 2022.02.06 |
---|---|
함수 3 형성평가2 (0) | 2022.02.06 |
문자열1 - 자가진단9 (0) | 2022.01.19 |
함수3 - 자가진단3 (0) | 2022.01.07 |
머지 정렬 Merge Sort (0) | 2021.12.31 |
문자열1 - 자가진단9
#include <bits/stdc++.h>
using namespace std;
//문자열1 - 자가진단9
int main() {
string str;
cin >> str;
int len = str.size();
for (int i = 0; i < len; i++) {
for (int j = len-1; j > 0; j--) {
swap(str[j], str[j-1]);
}
cout << str << "\n";
}
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수 3 형성평가2 (0) | 2022.02.06 |
---|---|
최단 경로 - 다익스트라 - dijkstra (0) | 2022.02.01 |
함수3 - 자가진단3 (0) | 2022.01.07 |
머지 정렬 Merge Sort (0) | 2021.12.31 |
머지 정렬 Merge Sort (0) | 2021.12.31 |
chapter one: the chosen one
상동초 예비5학년 전승빈 학생입니다.
There once was a boy named Harry and he lived in a magical land named Cotata,
all the teens and adults had elemental powers like fire, water, wind, and earth. but
Harry was just a kid so he wasn't allowed to have any powers. but one day the
ruler of Cotata came to Harry's house and told Harry he was the chosen one
to have all of the elemental powers. so when he was 16years old, he went to the
elemental academy and learned how to control his powers. but one day the enemy
of Cotata, Talba came to suck all the elemental powers out of the peoples who lived
in Cotata...
to be continued...
함수3 - 자가진단3
#include <bits/stdc++.h>
using namespace std;
//함수3 - 자가진단3
int f(int n){
if(n==0)
return n;
return n + f(n-1);
}
int main() {
int n;
cin >> n;
int a = f(n);
printf("%d", a);
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
최단 경로 - 다익스트라 - dijkstra (0) | 2022.02.01 |
---|---|
문자열1 - 자가진단9 (0) | 2022.01.19 |
머지 정렬 Merge Sort (0) | 2021.12.31 |
머지 정렬 Merge Sort (0) | 2021.12.31 |
quick sort (퀵정렬) - 내림차순 (0) | 2021.12.31 |
단어 뒤집기 2
X혁 학생의 단어뒤집기2 성공 코드
#include <bits/stdc++.h>
using namespace std;
//단어 뒤집기 2
int main()
{
stack<char> k,l;
string a;
int i,j,b;
getline(cin,a);
b=a.size();
for(i=0;i<b;i++){
if(a[i]=='<'){
k.push(a[i]);
while(!l.empty()){
cout << l.top();
l.pop();
}
cout << "<";
}
if(a[i]=='>'){
k.pop();
cout << ">";
}
if(!k.empty()&&a[i]!='<'){
cout << a[i];
}
if(k.empty()&&a[i]!='>'){
l.push(a[i]);
}
}
return 0;
}
'정보올림피아드-KOI > BOJ' 카테고리의 다른 글
백준 토마토 (0) | 2022.03.07 |
---|---|
스택 Stack (0) | 2022.02.04 |
백준 : 가운데를 말해요 1655번 (0) | 2020.05.10 |
BOJ 외판원 순회 2 - 10971번 (0) | 2020.05.08 |
백준 - 프린터 큐 : 1966번 (0) | 2020.04.26 |
머지 정렬 Merge Sort
동빈나의 머지소트
#include <bits/stdc++.h>
using namespace std;
int number = 8;
int sorted[8]; //정렬 배열은 받드시 전역 배열
void merge(int a[], int m, int middle, int n){ //m : 시작점, middle : 중간점, n : 끝점
int i = m;
int j = middle+1;
int k = m;
//작은 순서대로 배열에 삽입
while(i <= middle && j <= n){
if(a[i] <= a[j]){
sorted[k] = a[i];
i++;
}
else{
sorted[k] = a[j];
j++;
}
k++;
}
if(i > middle){
for(int t = j; t<=n; t++){
sorted[k] = a[t];
k++;
}
}
else{
for(int t=i; t<=middle; t++){
sorted[k] = a[t];
k++;
}
}
//sorted 에서 a배열로 옮겨준다
for(int t=m; t<=n; t++){
a[t] = sorted[t];
}
}
void mergesort(int a[], int m, int n){
//크기가 1보다 큰 경우
if(m < n){
int middle = (m+n)/2;
mergesort(a, m, middle);
mergesort(a, middle+1, n);
merge(a,m, middle, n);
}
}
int main()
{
int array[8] = {7,6,5,8,3,5,9,1};
mergesort(array, 0, number-1);
for(int t=0; t<number; t++){
printf("%d ", array[t]);
}
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
문자열1 - 자가진단9 (0) | 2022.01.19 |
---|---|
함수3 - 자가진단3 (0) | 2022.01.07 |
머지 정렬 Merge Sort (0) | 2021.12.31 |
quick sort (퀵정렬) - 내림차순 (0) | 2021.12.31 |
함수3 - 형성평가6 (0) | 2021.12.30 |
머지 정렬 Merge Sort
동빈나의 머지소트
#include <bits/stdc++.h>
using namespace std;
int number = 8;
int sorted[8]; //정렬 배열은 받드시 전역 배열
void merge(int a[], int m, int middle, int n){ //m : 시작점, middle : 중간점, n : 끝점
int i = m;
int j = middle+1;
int k = m;
//작은 순서대로 배열에 삽입
while(i <= middle && j <= n){
if(a[i] <= a[j]){
sorted[k] = a[i];
i++;
}
else{
sorted[k] = a[j];
j++;
}
k++;
}
if(i > middle){
for(int t = j; t<=n; t++){
sorted[k] = a[t];
k++;
}
}
else{
for(int t=i; t<=middle; t++){
sorted[k] = a[t];
k++;
}
}
//sorted 에서 a배열로 옮겨준다
for(int t=m; t<=n; t++){
a[t] = sorted[t];
}
}
void mergesort(int a[], int m, int n){
//크기가 1보다 큰 경우
if(m < n){
int middle = (m+n)/2;
mergesort(a, m, middle);
mergesort(a, middle+1, n);
merge(a,m, middle, n);
}
}
int main()
{
int array[8] = {7,6,5,8,3,5,9,1};
mergesort(array, 0, number-1);
for(int t=0; t<number; t++){
printf("%d ", array[t]);
}
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수3 - 자가진단3 (0) | 2022.01.07 |
---|---|
머지 정렬 Merge Sort (0) | 2021.12.31 |
quick sort (퀵정렬) - 내림차순 (0) | 2021.12.31 |
함수3 - 형성평가6 (0) | 2021.12.30 |
591 : 함수3 - 자가진단6 (0) | 2021.12.30 |
quick sort (퀵정렬) - 내림차순
#include <bits/stdc++.h>
using namespace std;
//퀵정렬 : 내림차순
void quick(int data[], int left, int right){
int num, i, j, temp;
if(right > left){
num = data[right];
i = left - 1;
j = right;
for(;;){
while(data[++i] > num);
while(data[--j] < num);
if(i >= j)
break;
swap(data[i], data[j]);
}
swap(data[i], data[right]);
quick(data, left, i-1);
quick(data, i+1, right);
}
}
int main() {
int a[10] = {2,3,4,0,9,8,7,6,5,1};
for(auto x : a){
printf("%d ", x);
}
puts("\n");
quick(a, 0, 9);
for(auto x : a){
printf("%d ", x);
}
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
머지 정렬 Merge Sort (0) | 2021.12.31 |
---|---|
머지 정렬 Merge Sort (0) | 2021.12.31 |
함수3 - 형성평가6 (0) | 2021.12.30 |
591 : 함수3 - 자가진단6 (0) | 2021.12.30 |
590 : 함수3 - 자가진단5 (0) | 2021.12.30 |
함수3 - 형성평가6
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=136&sca=10d0
#include <bits/stdc++.h>
using namespace std;
//함수3 - 형성평가6
int rec(int mul, int n){
if(n == 0)
return mul;
int t = n%10;
if( t != 0){
mul *= t;
}
return rec(mul, n/10);
}
int main() {
int a,b,c;
cin >> a >> b >> c;
int n = a * b * c;
printf("%d ",rec(1, n));
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
머지 정렬 Merge Sort (0) | 2021.12.31 |
---|---|
quick sort (퀵정렬) - 내림차순 (0) | 2021.12.31 |
591 : 함수3 - 자가진단6 (0) | 2021.12.30 |
590 : 함수3 - 자가진단5 (0) | 2021.12.30 |
592 : 함수3 - 자가진단4 (0) | 2021.12.30 |
591 : 함수3 - 자가진단6
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=228&sca=10d0
#include <bits/stdc++.h>
using namespace std;
//함수3 - 자가진단6
int rec(int index){
if(index <= 3)
return index;
return rec(index/2) + rec(index-1);
}
int main() {
int n;
cin >> n;
printf("%d ",rec(n));
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
quick sort (퀵정렬) - 내림차순 (0) | 2021.12.31 |
---|---|
함수3 - 형성평가6 (0) | 2021.12.30 |
590 : 함수3 - 자가진단5 (0) | 2021.12.30 |
592 : 함수3 - 자가진단4 (0) | 2021.12.30 |
589 : 함수3 - 자가진단3 (0) | 2021.12.30 |
590 : 함수3 - 자가진단5
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=227&sca=10d0
#include <bits/stdc++.h>
using namespace std;
//함수3 - 자가진단5
int out[30];
int n;
void rec(int index){
if(index == n){
for(int i=0; i<n; i++){
printf("%d ", out[i]);
}
puts("\n");
return;
}
for(int i=0; i<6; i++){
out[index] = i+1;
rec(index+1);
}
}
int main() {
cin >> n;
rec(0);
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
함수3 - 형성평가6 (0) | 2021.12.30 |
---|---|
591 : 함수3 - 자가진단6 (0) | 2021.12.30 |
592 : 함수3 - 자가진단4 (0) | 2021.12.30 |
589 : 함수3 - 자가진단3 (0) | 2021.12.30 |
미로탈출 - 파이썬 (0) | 2021.02.04 |
592 : 함수3 - 자가진단4
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=229&sca=10d0
#include <bits/stdc++.h>
using namespace std;
//함수3 - 자가진단4
int rec(int sum, int n){
if(n==0)
return sum;
sum += pow(n%10, 2);
rec(sum, n/10);
}
int main() {
int n;
cin >> n;
printf("%d",rec(0, n));
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
591 : 함수3 - 자가진단6 (0) | 2021.12.30 |
---|---|
590 : 함수3 - 자가진단5 (0) | 2021.12.30 |
589 : 함수3 - 자가진단3 (0) | 2021.12.30 |
미로탈출 - 파이썬 (0) | 2021.02.04 |
음료수 얼려먹기 - 파이썬 (0) | 2021.02.04 |
589 : 함수3 - 자가진단3
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=226&sca=10d0
#include <bits/stdc++.h>
using namespace std;
//함수3 - 자가진단3
int rec(int sum, int n){
if(n==0)
return sum;
sum += n;
rec(sum, n-1);
}
int main() {
int n;
cin >> n;
printf("%d",rec(0, n));
return 0;
}
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
590 : 함수3 - 자가진단5 (0) | 2021.12.30 |
---|---|
592 : 함수3 - 자가진단4 (0) | 2021.12.30 |
미로탈출 - 파이썬 (0) | 2021.02.04 |
음료수 얼려먹기 - 파이썬 (0) | 2021.02.04 |
BFS - 파이썬 (0) | 2021.02.04 |
함수3 - 자가진단2
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=225&sca=10d0
#include <bits/stdc++.h>
using namespace std;
//함수3 - 자가진단2
void rec(int n){
if(n==0)
return;
printf("%d\n", n);
rec(n-1);
}
int main() {
int n;
cin >> n;
rec(n);
return 0;
}
587 : 함수3 - 자가진단1
#include <bits/stdc++.h>
using namespace std;
//함수3 - 자가진단1
void rec(int n){
if(n==0)
return;
printf("recursive\n");
rec(n-1);
}
int main() {
int n=3;
rec(3);
return 0;
}
접속사 if
[ 접속사 if ]
▷ 부사절을 이끄는 조건의 접속사if
: 만약 ~라면
: If + 주어 + 동사의 현재형, 주어+ 조동사(will,can,may) + 동사원형
=주어+ 조동사(will,can,may) + 동사원형 + If + 주어 + 동사의 현재형
★ if절의 해석이 미래의 의미일지라도 동사는 현재형으로 써준다.
주절의 의미가 미래라면 미래를 나타내는 조동사will 을 써준다.
E.g) If it snows, I will make a snowman.
E.g) You won't be late for school if you get up early tomorrow.
▷ 명사절을 이끄는 접속사if
: ~인지 아닌지
: 주어 + 동사 + 목적어 (if /whether+ 주어 + 동사)
: 주어(wheather + 주어 + 동사) + 동사 ~
: 주어 + 동사 + 보어(whether + 주어 + 동사)
: 주로 know, wonder, be sure, ask 등의 동사 다음의 목적어로만 쓰인다.
: if
: if 대신 whether 와 바꿔 쓸수 있다.
: (whether + 주어 + 동사) 는 주어, 목적어, 보어로 모두 사용가능하다.
E.g) I don't know if(whether) they're coming.
E.g) Did you know if(whether) he was cooking?
E.g) I wonder if(whether) she will buy it
E.g) Whether you believe me or not is important.
'English > Grammar' 카테고리의 다른 글
간접 의문문 (0) | 2021.01.09 |
---|---|
5형식 문장/ 목적보어/불완전타동사 (0) | 2020.06.19 |
4형식을 3형식으로 바꿔보기 (0) | 2020.04.29 |
4형식 문장 /수여동사/수여동사로 착각하기 쉬운 완전타동사) (0) | 2020.03.30 |
3형식 문장 보기/완전타동사/주의해야할 타동사 (0) | 2020.03.06 |
미로탈출 - 파이썬
#미로탈출
from collections import deque
def BFS(graph, a,b,cnt):
dx=[0,1,0,-1]
dy=[1,0,-1,0]
queue=deque()
queue.append((a,b))
graph[a][b]=1
while queue:
x,y=queue.popleft()
for i in range(4):
nx=x+dx[i]
ny=y+dy[i]
if(nx>=0 and ny>=0 and nx<n and ny<m):
if graph[nx][ny]==1:
graph[nx][ny]=graph[x][y]+1
queue.append((nx,ny))
n,m=map(int, input().split())
graph=[]
for i in range(n):
graph.append(list(map(int, input())))
BFS(graph,0,0,1)
print(graph[n-1][m-1])
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
592 : 함수3 - 자가진단4 (0) | 2021.12.30 |
---|---|
589 : 함수3 - 자가진단3 (0) | 2021.12.30 |
음료수 얼려먹기 - 파이썬 (0) | 2021.02.04 |
BFS - 파이썬 (0) | 2021.02.04 |
DFS - 인접 리스트 (0) | 2021.02.04 |
음료수 얼려먹기 - 파이썬
#음료수 얼려먹기
def DFS(graph,x,y):
dx=[0,1,0,-1]
dy=[1,0,-1,0]
graph[x][y]=1
for i in range(4):
if(x+dx[i]>=0 and y+dy[i]>=0 and x+dx[i]<n and y+dy[i]<m):
if graph[x+dx[i]][y+dy[i]]==0:
graph[x+dx[i]][y+dy[i]]=1
DFS(graph,x+dx[i],y+dy[i])
n,m=map(int,input().split())
graph = []
cnt=0
for i in range(n):
graph.append(list(map(int, input())))
for i in range(n):
for j in range(m):
if(graph[i][j]==0):
cnt+=1
DFS(graph,i,j)
print(cnt)
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
589 : 함수3 - 자가진단3 (0) | 2021.12.30 |
---|---|
미로탈출 - 파이썬 (0) | 2021.02.04 |
BFS - 파이썬 (0) | 2021.02.04 |
DFS - 인접 리스트 (0) | 2021.02.04 |
1337 : 달팽이삼각형 (0) | 2021.02.02 |
BFS - 파이썬
#BFS
from collections import deque
def BFS(graph,v,vi,r):
queue=deque()
queue.append(v)
while(queue):
k=queue.popleft()
r.append(k)
for i in range(len(graph[k])):
if vi[graph[k][i]]==False:
#r.append(graph[k][i])
vi[graph[k][i]]=True
queue.append(graph[k][i])
r=[]
graph = [
[],
[2,3,8],
[1,7],
[1,4,5],
[3,5],
[3,4],
[7],
[2,6,8],
[1,7]
]
vi=[False]*9
vi[1]=True
BFS(graph, 1,vi,r)
print(r)
'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글
미로탈출 - 파이썬 (0) | 2021.02.04 |
---|---|
음료수 얼려먹기 - 파이썬 (0) | 2021.02.04 |
DFS - 인접 리스트 (0) | 2021.02.04 |
1337 : 달팽이삼각형 (0) | 2021.02.02 |
2071 : 파스칼 삼각형 (0) | 2021.01.26 |